WITH cat_sales AS (SELECT product_category, SUM(amount) AS revenue FROM orders GROUP BY product_category), total_sales AS (SELECT SUM(revenue) as global_total FROM cat_sales) SELECT product_category, revenue, SUM(revenue) OVER (ORDER BY revenue DESC) * 100.0 / (SELECT global_total FROM total_sales) AS cumulative_pct FROM cat_sales;
Write your query and click "Run Query" (Ctrl + Enter) to see results and testcase validation.