問題:
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 |
大意:
給定Employee表,請編寫一個SQL查詢,找出掙得比經理多的員工。從上表中可以看出,Joe是唯一一個收入超過經理的員工。
要求結果如上方。
解題
很簡單,熟悉使用where就能解
SELECT
a.Name as Employee
FROM
employee AS a,
employee AS b
WHERE
a.ManagerId=b.Id
AND a.Salary > b.Salary