SELECT
t1.product_id,
t1.product_name,
t1.q2_2024_sales_total,
DENSE_RANK() OVER (PARTITION BY t1.category ORDER BY t1.q2_2024_sales_total DESC) AS category_rank,
s.supplier_name
FROM
(
SELECT
p.product_id,
p.product_name,
p.category,
COALESCE(SUM(o.total_amount), 0.00) AS q2_2024_sales_total
FROM
product_info p
LEFT JOIN order_info o
ON p.product_id = o.product_id
AND o.order_date BETWEEN '2024-04-01' AND '2024-06-30'
GROUP BY
p.product_id,
p.product_name,
p.category
) t1
LEFT JOIN supplier_info s ON s.product_id = t1.product_id
ORDER BY
t1.product_id ASC