Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Third Highest Salary Query

MediumSQL · PostgreSQL00:00
Practice interviewer
In session
5 left
00:00

Your question is Third Highest Salary Query. Start with the requirements and the one table on the right.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.

Problem

Amazon's Business Analytics team is reviewing compensation levels across active employees. Write a PostgreSQL query that finds the third-highest distinct salary using a self-join on the employees table.

Requirements

  1. Consider only employees where is_active is TRUE.
  2. Return the third-highest distinct non-null salary, so employees with the same salary share one ranking.
  3. Return one column named third_highest_salary and one row. Return no rows if fewer than three distinct active salaries exist.
  4. Use a self-join and aggregation rather than a window function.

Schema

employees
ColumnTypeDescription
employee_idPKINTUnique employee identifier
employee_nameVARCHAR(100)Employee's name
job_titleVARCHAR(100)Employee's role
teamVARCHAR(50)Amazon business team
salaryNUMERIC(12,2)Annual base salary
is_activeBOOLEANWhether the employee is currently active
Tablesemployees
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results