我正在尝试连接多个表以获取每个id的单行结果。此结果将发送到angular UI
我有三张桌子userfriendstrip
Auser可以有多个friends但有一个trip
我喜欢在一行中获取与用户对应的所有详细信息,可能friends像数组一样作为字段?
这就是我桌子的样子。
http://sqlfiddle.com/#!9/0879d/2
https://gist.github.com/tomalex0/9dee4fff85583732e7d0

最佳答案

group_concat应该能帮到你:

SELECT    u.*, t.*, friendlist
FROM      user u
LEFT JOIN trip t ON u.id = t.user_id
LEFT JOIN (SELECT   user_id, GROUP_CONCAT(CONCAT (name, '- ', email)) friendlist
           FROM     friends
           GROUP BY user_id) f ON f.user_id = u.id

关于mysql - 联接3个表以获得单行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30614599/

10-13 03:28