1. 程式人生 > 其它 >SQL資料庫練習③之超過經理收入的員工

SQL資料庫練習③之超過經理收入的員工

技術標籤:sql資料庫mysql

SQL資料庫練習③之超過經理收入的員工

一.擁有的表

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 |
±---------+

三.解決方案[王子威]

分析

查詢 表1員工.名字 別名設定為Employee
表有 Employee 表1員工表別名為staff 和 Employee 表2經理 別名為manager

條件 員工.工資 > 經理.工資 and 員工.經理id = 經理.id

SQL語句

Select staff.name as Employee 
from Employee as staff,Employee as manager  
where staff.salary > manager.salary and staff.managerId = manager.id