181. Employees Earning More Than Their Managers
Description
The Employee
table holds all employees including their managers. Every employee has an Id, and there is also a column for the manager Id.
Id
Name
Salary
ManagerId
1
Joe
70000
3
2
Henry
80000
4
3
Sam
60000
NULL
4
Max
90000
NULL
Given the Employee
table, write a SQL query that finds out employees who earn more than their managers. For the above table, Joe is the only employee who earns more than his manager.
Employee
Joe
Constraints
Approach
Links
GeeksforGeeks
ProgramCreek
YouTube
Examples
Input:
{"headers": {"Employee": ["Id", "Name", "Salary", "ManagerId"]}, "rows": {"Employee": [[1, "Joe", 70000, 3], [2, "Henry", 80000, 4], [3, "Sam", 60000, null], [4, "Max", 90000, null]]}}
Output:
{"headers": ["Employee"], "values": [["Joe"]]}
Solutions
# MySQL query statement
SELECT Name as Employee
FROM Employee emp
WHERE emp.Salary >
(SELECT Salary FROM Employee mgr WHERE mgr.Id = emp.ManagerId);
Follow up
Last updated
Was this helpful?