SQL QuestSQL Interview Questions › Querying Basics

Give the Top Performers a Raise

MediumFreeQuerying Basics

Comp approved a 10% raise for everyone with a performance_rating of 4.5 or higher.

Apply it — rounding the new salary to a whole number — then show name, department, performance_rating, salary for everyone who got the raise, ordered by salary descending, then name.

The new idea: the SET clause can compute from the column's own current value. SET salary = ROUND(salary * 1.10) reads the old salary and writes the new one in a single pass over the matching rows.

One consequence that catches people out: this statement is not idempotent. Run it twice and you have handed out a 21% raise. Write statements know how many times you ran them, even when the result looks the same — which is exactly why this challenge resets the data before each run.

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: 8 rows, top salary now 126,500

Hint

The hint for this one spells out most of the query, so it stays in the editor. Reach for UPDATE, DML, WHERE, and open the hint there if you stall.

Concepts

UPDATE DML WHERE ROUND

Practise the topic: SQL practice questions

Related questions

Class Survival BreakdownMedium · FreeDepartment Roster with GROUP_CONCATMedium · FreeMovie Rating Tier BreakdownMedium · FreeFull Survival Dashboard by ClassMedium · FreeGenre Financial ReportMedium · FreeDepartment Compensation ReportMedium · 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