SQL QuestSQL Interview Questions › Joins

Employees with Similar Salaries

HardProQuerying BasicsJoins

Find all pairs of employees whose salaries are within 10% of each other but who are in different departments. Show emp1_name, emp1_salary, emp2_name, emp2_salary, and salary_diff (absolute difference). Only show each pair once (emp1 has the lower emp_id). Sort by salary_diff ascending. Non-equi joins (inequality conditions in JOIN) are asked at Google and Bloomberg because they test whether you can think beyond simple key matching.

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: Pair appears because $73k is within 10% of $70k

Hint

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

Concepts

SELECT Self-Join Non-Equi Join ABS WHERE BETWEEN

Practise the topic: SQL practice questions · JOIN practice · Advanced SQL interview questions

In these company practice sets

Google · Snowflake

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

Related questions

Multi-CTE Revenue PipelineHard · FreeEmployees Earning More Than ManagerHard · ProMoving Average with Dynamic WindowHard · ProDetect Repeat Buyers Within 7 DaysHard · ProRecursive Team Size RollupHard · ProConsecutive IDsHard · Pro

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