sql题目
解答下该题目:一个表,存了一年的产品销售数据,写sql查询每个月订单金额最大的产品名称是什么?
必须用rank,怎么写,求大佬解答
必须用rank,怎么写,求大佬解答
全部评论
方法1:select 产品名称,订单金额,月份 from ge
where (产品名称,订单金额,月份) in(
select 产品名称,max(订单金额),月份 from ge
group by 产品名称,月份)
方法二:select 产品名称,订单金额,月份 from(
select 产品名称,订单金额,月份,rank()over(partition by 产品名称,月份 order by 订单金额 desc) 排名 from ge) as me
where me.排名=1
以月份聚合,rank排序分配序号,from子查询,where筛选序号
拆分写法:1.先求每个产品,订单的总和。2.在用rank进行排序 3.提取rank排序为1的即可。
selcet
product_id,
month
from
(
select
product_id,
month,
row_number() over(partition by month order by amt desc) as rank
from table
) t
where rank = 1

我会
子查询
相关推荐
点赞 评论 收藏
分享
2025-11-12 02:50
广州航海学院 软件测试
Jcwemz:中软证书写单行,考了什么学了什么相关技术栈的内容就说自己会什么,
没实习就包装实习简历,将项目经历写成实习做的,项目时间拉长,项目成果具体化,测试的项目成果无非就是写了多少用例查出了多少bug,重要的不是实习了多久,而是你会多少东西,你能表达的就都是你的。
cet4,随便找个地方标上就好了,不用写单行。
粗略建议,我也不在行,觉得对的可以采纳 点赞 评论 收藏
分享
rush$0522:转正名单没进,大概率本来就没打算留你 点赞 评论 收藏
分享

腾讯成长空间 6021人发布