SQL QuestSQL Interview Questions › Window Functions

Department Salary Percentile Buckets

HardProQuerying BasicsWindow FunctionsConditional Logic

Assign each employee a salary percentile bucket within their department using NTILE(4). Show name, department, salary, dept_quartile (1=bottom 25%, 4=top 25%), and a label: 'Bottom 25%', 'Below Median', 'Above Median', 'Top 25%'. Sort by department, salary DESC. NTILE + CASE labeling is a common Amazon and Meta pattern for segmentation.

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

employees

emp_idnamedepartmentpositionsalaryhire_datemanager_idperformance_rating
1Alice JohnsonEngineeringSenior Developer950002019-03-1554.5
2Bob SmithEngineeringDeveloper750002020-06-0113.8
3Carol WilliamsMarketingMarketing Manager850002018-09-20NULL4.2

Expected output: dept_quartile: 4, label: Top 25%

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 NTILE PARTITION BY CASE

Practise the topic: SQL practice questions · Window function practice · CASE WHEN practice · Ranking function practice · Advanced SQL interview questions

In these company practice sets

Amazon · Anthropic · Google · Meta · NVIDIA · OpenAI · Snowflake

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