2016-04-26 8 views
1

Ich versuche, beide Besitzer und editby zu ziehen. Beide Felder sind INT. Innerhalb einer einfachen Tabelle, zum Beispiel:MYSQL Join Mehrere Male an der gleichen Tabelle

Benutzer:

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

doc:

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

SQL:

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 

ich Besitzer user_name greifen kann, aber ich bin nicht sicher, wie man editby auf der gleichen Tabelle erhält. Wie gehe ich vor, die verschiedenen Benutzernamen für verschiedene ID-Felder mehrmals zu ziehen?

Antwort

3

Join the users Tabelle zweimal mit unterschiedlichen Aliase

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

Thank you! Ich werde es als Antwort akzeptieren, wenn es erlaubt. – MilkACow

Verwandte Themen