题解 | #每个商品的销售总额#
每个商品的销售总额
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