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-12-09 14:12
新乡学院 嵌入式软件开发
程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的 点赞 评论 收藏
分享