2011-08-01 69 views
2

我有一個具有ID名稱和經理ID數據庫查詢一個複雜的選擇statment

id name manager_id 
1 myName 4 
2 alex 3 
3 brain 2 
4 someone 1 

現在我必須寫這顯示這樣的

myname someone 
alex brain 
brain alex 
someone myname 

意味着我們必須結果查詢表顯示名稱和mnager根據Id的名稱

+0

閱讀關於左連接。 (我不會說它很複雜...) –

回答

5

加入表本身:

SELECT t1.name, t2.name FROM my_table AS t1 
    LEFT JOIN my_table AS t2 ON(t1.manager_id = t2.id) 
+0

非常感謝noboddy它真的很有用 – Wasif

4

這是否會返回您以後的內容?

SELECT 
    t1.name AS Name, 
    t2.name AS manager 
FROM tab t1 
    JOIN tab t2 ON(t1.manager_id = t2.id) 
2
SELECT 
    employee.name, 
    manager.name 
FROM 
    tablename employee 
INNER JOIN 
    tablename manager 
ON 
    employee.manager_id = manager.id 

更換tablename與實際的表名。