2015-11-03 112 views
-1

在面試中,以下問題被詢問並且無法提供適當的答案。自我加入-SQL-查詢

問題1: 如果我有員工ID和經理,我想在下面的格式與員工的名字和經理來顯示它(僱員ID 1表有經理空您需要使用自聯接。只有

問題2:如果我有相同的結果,得到了內部連接,右外連接,左外連接是什麼類型的那個表有內容(我沒有得到這個問題的任何樣本數據,他問我假設)

enter image description here

任何人都可以幫我找出答案嗎?

回答

2

問題1:這是與左完成加入:

select t1.name, t2.name as manager 
from tablename t1 
left join tablename t2 on t1.manager = t2.id 

問題2:這些表可以是空的,例如,或包含上連接的列和相同的行數相同的數據。

+0

我可以使用自我加入嗎?問題1和2之間沒有關係 –

+0

當你自己加入表格時,它是自加入的。是的,你可以做到這一點。 –

2

關閉我的頭頂,第1個問題的答案是這樣的:

select emp.id,emp.name,emp.department,emp.salary,m.id as manager 
from employee emp 
left join employee m on m.id=emp.managerid 

不太知道我理解的第二個問題...

答到第二個問題是,每個人都有一個經理(所以沒有NULL值)。在這種情況下,無論連接類型如何,結果都是一樣的。

+0

我得到了使用左連接的O/P,但無法使用自連接進行查詢。也請提問,請不要將表格結構作爲參考。如果所有連接都給出了相同的結果,那麼該表包含的數據類型是什麼? –

+1

Err ...這是一個自連接,表連接在它本身上。 –