SELECT
product_name,
total_sales,
ROW_NUMBER() OVER(PARTITION BY t2.category ORDER BY t1.total_sales DESC) category_rank
FROM
(
SELECT
p.product_id,
p.name product_name,
SUM(quantity) total_sales
FROM
orders o,
products p
WHERE
o.product_id = p.product_id
GROUP BY
p.product_id,
p.name
) t1,
products t2
WHERE
t1.product_id = t2.product_id
ORDER BY
t2.category,
t1.total_sales DESC,
t2.product_id

京公网安备 11010502036488号