Как написать MySQL, используя левое соединение для этого типа проблемы? - PullRequest
2 голосов
/ 09 марта 2011

Как мне построить запрос mySQL, используя левое соединение для этой проблемы?

Feed Table
-id
-lastpost_id (The id of the user from USER TABLE who last posted)
-firstpost_id (The id of the user from USER TABLE who first posted)

User Table
-id
-name

Я хочу получить такой стол

Result 
-id
-lastpost_id
-lastpost_name
-firstpost_id
-firstpost_name

1 Ответ

5 голосов
/ 09 марта 2011
select *, a.name as lastpost_name, b.name as firstpost_name from Feed f 
      left join user a on f.lastpost_id=a.id 
      left join user b on f.firstpost_id=b.id

Хитрость заключается в том, чтобы покинуть соединение, а затем присвоить псевдониму таблицы значение a или b.Таким образом, вы можете сделать несколько соединений к одной таблице

...