Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Zweimaliges Auswählen einer Spalte aus einer Tabelle in MySQL

Sie müssen Tabelle b zweimal beitreten und jedes Mal einen anderen Tabellennamen (b1, b2) verwenden, indem Sie as verwenden

select *
from a join b as b1 on a.to = b1.lid 
       join b as b2 on a.from = b2.lid 

das Ergebnis wäre also

--------------------------------------------
|a.uid | a.to | b1.name | a.from | b2.name |
--------------------------------------------
|   1  |   1  |  one    |   2    | two     |
--------------------------------------------

aber was Sie wahrscheinlich wollen, ist, Namenskonflikte zu verhindern - wenn Sie z. Rufen Sie es aus PHP auf - also benennen Sie dann auch die Spalten um:

select a.*, b1.name as toName, b2.name as fromName
... (rest of the query as above)