2017-06-22 114 views
-3

我有一個SQL EMPLOYEE表如下所示:SELECT stament子查詢

╔════╦═════════════╦═══════════╦═══════════╦═════════════╗ 
║ ID ║ NAME  ║ TITLE  ║ HIRE_DATE ║ MANAGER ID ║ 
╠════╬═════════════╬═══════════╬═══════════╬═════════════╣ 
║ 1 ║ John Smith ║ Manager ║ 15-JUN-15 ║  NULL ║ 
║ 2 ║ Jim Jimmers ║ Associate ║ 23-AUG-15 ║  1  ║ 
╚════╩═════════════╩═══════════╩═══════════╩═════════════╝ 

我想返回如下:

從拉動名稱
╔═════════════╦═══════════╦═══════════╦══════════════╗ 
║ NAME  ║ TITLE  ║ HIRE_DATE ║ MANAGER NAME ║ 
╠═════════════╬═══════════╬═══════════╬══════════════╣ 
║ John Smith ║ Manager ║ 15-JUN-15 ║  NULL ║ 
║ Jim Jimmers ║ Associate ║ 23-AUG-15 ║ John Smith ║ 
╚═════════════╩═══════════╩═══════════╩══════════════╝ 

我只是真的有問題經理。有任何想法嗎?

感謝

+0

你嘗試過什麼?這是一個簡單的加入.. – GurV

回答

3

使用JOIN不是一個子查詢:

select t1.name, t1.title, t1.hire_date, t2.Name from table t1 left join table t2 on t1.managerid = t2.id 
+0

@GurwinderSingh你是對的。謝謝你指出。改變了我的答案 – Jens

3

應該是這樣的:

SELECT E1.NAME, E1.TITLE, E1.HIRE_DATE, E2.NAME 
FROM employee AS E1 LEFT OUTER JOIN employee AS E2 ON (E2.ID=E1.MANAGER_ID)