2016-04-26 21 views
1

私はオーナーとeditbyの両方を引き出しようとしています。これらのフィールドはどちらもINTです。単純なテーブルの内部では、例えば:MYSQL同じテーブルで複数回結合する

ユーザー:

user_id user_name 
----------------- 
2  johnny 
3  mecca 

DOC:

owner content editby 
---------------------- 
2  misc 3 

SQL:私は所有者のuser_nameをつかむことができますが、私はわからない

SELECT doc.owner, doc.content, doc.editby, users.user_name 
FROM doc 
LEFT JOIN 
    users 
ON 
users.user_id = doc.owner 
WHERE 
    doc_id = $id 

同じテーブルでeditbyを取得する方法。異なるidフィールドの異なるユーザー名を複数回取得するにはどうすればよいですか?

答えて

3

ありがとうございました別のエイリアス

SELECT doc.owner, doc.content, 
     e.user_name as editor, 
     o.user_name as owner 
FROM doc 
LEFT JOIN users o ON o.user_id = doc.owner 
LEFT JOIN users e ON e.user_id = doc.editby 
WHERE doc_id = $id 
+0

で二回usersテーブルに参加しましょう。私はそれが許されるときそれを答えとして受け入れるでしょう。 – MilkACow

関連する問題