题解 | #每个商品的销售总额#

每个商品的销售总额

https://www.nowcoder.com/practice/6d796e885ee44a9cb599f47b16a02ea4

#使用上述表格,编写一个SQL查询,返回每个商品的销售总量,先按照商品类别升序排序,再按销售总量降序排列,同时包括商品名称和销售总量。此外,还需要在结果中包含每个商品在其所属类别内的排名,排名相同的商品可以按照 product_id 升序排序。

#返回销售总量
#商品在其所属类型内的排名

with total as
(
select
distinct p.product_id
,p.name
,p.category
,sum(o.quantity)over(partition by o.product_id) as product_sum
#distinct 在select后面执行
from products p left join orders o
on p.product_id = o.product_id
)
,ra as
(select
*
,dense_rank()over(partition by category order by product_sum desc) as category_rank

from total
where product_sum is not null
)

select
name as product_name
,product_sum as total_sales
,category_rank
from ra
order by category asc,total_sales desc,category_rank asc,
product_id asc

全部评论

相关推荐

点赞 评论 收藏
分享
11-14 16:13
已编辑
重庆科技大学 测试工程师
Amazarashi66:不进帖子我都知道🐮❤️网什么含金量
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务