題目:
employee 表包含所有員工,他們的經理也屬於員工。每個員工都有乙個 id,此外還有一列對應員工的經理的 id。
±—±------±-------±----------+
| id | name | salary | managerid |
±—±------±-------±----------+
| 1 | joe | 70000 | 3 |
| 2 | henry | 80000 | 4 |
| 3 | sam | 60000 | null |
| 4 | max | 90000 | null |
±—±------±-------±----------+
給定 employee 表,編寫乙個 sql 查詢,該查詢可以獲取收入超過他們經理的員工的姓名。在上面的**中,joe 是唯一乙個收入超過他的經理的員工。
±---------+
| employee |
±---------+
| joe |
±---------+
題解:本題涉及一張表兩個資料的查詢與比較,因此需要多張相同的表進行連線比較。
而本題的比較,採用內連線比較合適,這樣可以過濾掉null項。
select e1.name as employee from employee e1 inner
join employee e2 on e1.managerid=e2.id where e1.salary>e2.salary;
LeetCode 181 超過經理收入的員工 解題
超過經理收入的員工 employee 表包含所有員工,他們的經理也屬於員工。每個員工都有乙個 id,此外還有一列對應員工的經理的 id。id name salary managerid 1 joe 70000 3 2 henry 80000 4 3 sam 60000 null 4 max 9000...
LeetCode181超過經理收入的員工
題目 employee 表包含所有員工,他們的經理也屬於員工。每個員工都有乙個 id,此外還有一列對應員工的經理的 id。id name salary managerid 1 joe 70000 3 2 henry 80000 4 3 sam 60000 null 4 max 90000 null ...
LeetCode 181 超過經理收入的員工
employee 表包含所有員工,他們的經理也屬於員工。每個員工都有乙個 id,此外還有一列對應員工的經理的 id。id name salary managerid 1 joe 70000 3 2 henry 80000 4 3 sam 60000 null 4 max 90000 null 給定 ...