sql题目

解答下该题目:一个表,存了一年的产品销售数据,写sql查询每个月订单金额最大的产品名称是什么?
必须用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
2 回复 分享
发布于 2023-06-21 02:31 湖北
以月份聚合,rank排序分配序号,from子查询,where筛选序号
1 回复 分享
发布于 2023-06-05 13:55 河南
子查询
点赞 回复 分享
发布于 2023-06-05 01:58 湖南
我会
点赞 回复 分享
发布于 2023-06-13 20:35 北京
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
点赞 回复 分享
发布于 01-03 19:57 浙江
拆分写法:1.先求每个产品,订单的总和。2.在用rank进行排序 3.提取rank排序为1的即可。
点赞 回复 分享
发布于 05-31 16:15 北京

相关推荐

1 5 评论
分享
牛客网
牛客企业服务