2009-11-20 6 views
2

Ok, voici la configuration. Notez que le code ci-dessous est une version SIMPLIFIÉE.problème lors de la création d'une instruction sql instruction select instruction référence même table deux fois

PHP 5.2

MOTEUR: MyISAM

table quotes q 
table users u 

FROM quotes q LEFT JOIN users u 
ON q.qid = u.uid 

Soo ... la table citations référence à un utilisateur (de la table des utilisateurs) (le propriétaire de la citation) mais citations de la table a également un champ appelé createdby (l'utilisateur qui a créé le devis ...)

J'essaie d'afficher le numéro de citation, le nom complet du propriétaire, et le nom complet.

Je peux afficher le numéro de citation, le nom complet du propriétaire et créé par USERNAME (je veux le nom complet) en utilisant le code ci-dessus.

J'ai essayé d'ajouter

ON q.qid = u.uid  + --> AND q.createdBy = u.uid 

Mais cela ne semble pas fonctionner et même si elle a fait je ne sais pas comment référencer le nom complet correct (propriétaire ou CreatedBy).

Répondre

1
SELECT q.id, owner.fullname, creator.fullname 
FROM quotes q 
LEFT JOIN 
     users owner 
ON  owner.uid = q.qid 
LEFT JOIN 
     users creator 
ON  creator.uid = q.createdby 
+0

Merci Quassnoi, cela fonctionne exactement comme je voulais travailler! – payling