3. select w.LAST_NAME,m.LAST_NAME
1. from EMPLOYEES w join EMPLOYEES m
2. on w.MANAGER_ID=m.EMPLOYEE_ID
現在有一張資料表EMPLOYEES,裡面按人名欄目排列,每個人名後面都有相應的自己的員工ID(EMPLOYEE_ID),跟自己主管的ID(Manager_id)
但其實自己主管的ID,也就是屬於主管的員工ID
例如Mike的員工ID是200,他的主管的ID是100,而他的主管是Mia,那麼其實Mia的員工ID就是Mike主管的員工ID,也就是100。
1. from EMPLOYEES w join EMPLOYEES m:
員工的資料表w:
|
主管的資料表m:
|
2. on w.MANAGER_ID=m.EMPLOYEE_ID:
員工(w) | 主管(m) | |||
員工名稱 | 員工ID | 員工主管ID | 員工ID(m.EMPLOYEE_ID) | 員工名稱 |
Mike | 200 | 100 | 100 | Mia |
Jack | 200 | 100 | ||
Tim | 200 | 100 | ||
Judy | 200 | 100 | ||
Amy | 200 | 100 | ||
Mia | 100 |
員工主管ID(w.MANAGER_ID)=員工ID(m.EMPLOYEE_ID)
3. select w.LAST_NAME,m.LAST_NAME:員工主管ID=員工ID(m.EMPLOYEE_ID)
取得w.LAST_NAME:
員工名稱 |
Mike |
Jack |
Tim |
Judy |
Amy |
Mia |
取得m.LAST_NAME:
員工名稱 |
Mia |
合起來:
員工名稱 | 員工名稱 |
Mike | Mia |
Jack | |
Tim | |
Judy | |
Amy |
--self Joins
select w.LAST_NAME,m.LAST_NAME--w.LAST_NAME是員工的名字,m.LAST_NAME是主管的名字
from EMPLOYEES w join EMPLOYEES m --1.把EMPLOYEES複製成兩份,一份是員工的(w)、一份是主管的(m),同時看著兩份資料
on w.MANAGER_ID=m.EMPLOYEE_ID--2.員工中的主管ID,其實就是主管自己的員工ID(設定主管ID=員工ID來做表格)
↑↓SAME
select w.LAST_NAME,m.LAST_NAME
from EMPLOYEES w,EMPLOYEES m
where w.MANAGER_ID=m.EMPLOYEE_ID
LAST_NAME | LAST_NAME |
Kochhar | King |
De Haan | King |
Hunold | De Haan |
Ernst | Hunold |
Lorentz | Hunold |
Mourgos | King |
Rajs | Mourgos |
Davies | Mourgos |
Matos | Mourgos |
Vargas | Mourgos |
Zlotkey | King |
Abel | Zlotkey |
Taylor | Zlotkey |
Grant | Zlotkey |
Whalen | Kochhar |
Hartstein | King |
Fay | Hartstein |
Higgins | Kochhar |
Gietz | Higgins |
左邊員工、右邊主管
(king是BOSS,沒有主管,所以沒有回傳資料)
select w.EMPLOYEE_ID,w.FIRST_NAME,w.MANAGER_ID,m.EMPLOYEE_ID,m.FIRST_NAME,m.MANAGER_ID
from EMPLOYEES w,EMPLOYEES m
where w.MANAGER_ID=m.EMPLOYEE_ID
w.EMPLOYEE_ID | w.FIRST_NAME | w.MANAGER_ID | m.EMPLOYEE_ID | m.FIRST_NAME | m.MANAGER_ID |
101 | Neena | 100 | 100 | Steven | NULL |
102 | Lex | 100 | 100 | Steven | NULL |
103 | Alexander | 102 | 102 | Lex | 100 |
104 | Bruce | 103 | 103 | Alexander | 102 |
107 | Diana | 103 | 103 | Alexander | 102 |
124 | Kevin | 100 | 100 | Steven | NULL |
141 | Trenna | 124 | 124 | Kevin | 100 |
142 | Curtis | 124 | 124 | Kevin | 100 |
143 | Randall | 124 | 124 | Kevin | 100 |
144 | Peter | 124 | 124 | Kevin | 100 |
149 | Eleni | 100 | 100 | Steven | NULL |
174 | Ellen | 149 | 149 | Eleni | 100 |
176 | Jonathon | 149 | 149 | Eleni | 100 |
178 | Kimberely | 149 | 149 | Eleni | 100 |
200 | Jennifer | 101 | 101 | Neena | 100 |
201 | Michael | 100 | 100 | Steven | NULL |
202 | Pat | 201 | 201 | Michael | 100 |
205 | Shelley | 101 | 101 | Neena | 100 |
206 | William | 205 | 205 | Shelley | 101 |
留言列表