Reviewed by Aditya Kumar · Last reviewed 2026-03-24
SELECT show_id, region, date, viewership, RANK() OVER (PARTITION BY region, date ORDER BY viewership DESC) AS rank FROM viewership. Add show name via JOIN. **Why RANK**: Ties share rank (e.g., same viewership). DENSE_RANK for no gaps....
SELECT show_id, region, date, viewership, RANK() OVER (PARTITION BY region, date ORDER BY viewership DESC) AS rank FROM viewership. Add show name via JOIN. Why RANK: Ties share rank (e.g., same viewership). DENSE_RANK for no gaps. Scalability: Partition by (region, date) for pruning.
Red Flag: No partition—global rank only. Pro-Move: 'RANK per region/date; materialized for dashboard performance.'
According to DataEngPrep.tech, this is one of the most frequently asked SQL interview questions, reported at 1 company. DataEngPrep.tech maintains an editor-reviewed database of 1,863 data engineering interview questions across 7 categories.