2011-08-01 10 views
2

私はデータベースクエリの複雑な選択なステートメント

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

は、今私たちがしなければならないことを

myname someone 
alex brain 
brain alex 
someone myname 

手段のような結果を表示するクエリを記述する必要はid名およびマネージャIDを持つテーブルを持っています表示名とムーグIDに基づく名前

+0

left joinについて読む(私はそれを複雑と呼んでいません...) –

答えて

5

は、それ自体でテーブルを結合:

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

本当にありがとう – 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を交換してください。

関連する問題