SQL QuestSQL Interview Questions › Window Functions

Revenue Share by Category (Window %)

HardProQuerying BasicsWindow FunctionsAggregation & Grouping

For each product category, calculate its revenue share as a percentage of total revenue. Show category, category_revenue (sum of total, 2 dec), total_revenue (sum across all categories, 2 dec), and revenue_share_pct (category as % of total, 1 dec). Use a window function for total_revenue (not a subquery). Sort by revenue_share_pct DESC. Revenue share with SUM() OVER() is asked at Stripe, Square, and every fintech because it tests whether you can mix aggregate and window functions in the same query.

Solve it in the browser editor →

Runs on SQLite in your browser, graded against the expected result, no signup. A wrong answer gets a diagnosis, not just "incorrect".

Schema

orders

order_idcustomer_idproductcategoryquantitypricetotalorder_datecountrystatus
11Laptop ProElectronics11299.991299.992024-01-15USAcompleted
22Wireless MouseElectronics249.9999.982024-01-16Canadacompleted
33Office ChairFurniture1349.99349.992024-01-17USAcompleted

Expected output: revenue_share_pct: 50.0

Hint

This is a Pro challenge — the hint, the step-by-step tutor and the reference solution open in the app.

Concepts

SELECT Window Functions SUM ROUND GROUP BY

Practise the topic: SQL practice questions · Window function practice · GROUP BY exercises · Advanced SQL interview questions

In these company practice sets

Amazon · Apple · Meta · Plaid · Ramp · Shopify · Snowflake · Stripe · Walmart · Microsoft

A SQL Quest challenge matched to patterns reported for these companies — not a question any of them has published.

Related questions

Cumulative Distinct Customers Over TimeHard · FreeSalary Rank Within DepartmentHard · FreeRunning Total RevenueHard · FreeYear-over-Year GrowthHard · Free7-Day Rolling Revenue AverageHard · FreeMulti-CTE Revenue PipelineHard · Free

Where would this cost you points in an interview?

Ten questions, no signup: a Skillmap across nine SQL skills and the one to fix first.

Take the readiness test