在同一张桌子上有很多关于加入的问题,但我找不到与我的问题相关的内容
我有两张桌子:
user (id, name)
friends (from, to)
我有以下查询。它应该与他们的朋友一起检索所有用户:
SELECT user.id, user.name, f.to, friend.id, friend.name
FROM user
LEFT JOIN friends f ON user.id = f.from
LEFT JOIN user friend ON user.id = f.to
LIMIT 0, 200
它返回如下内容:
id name from to id name
1 bob 1 3 NULL NULL
1 bob 1 4 NULL NULL
2 toto 2 7 NULL NULL
from和two是正确的,但第二次连接似乎不起作用。你有任何想法第二次加入有什么问题吗?
答案 0 :(得分:3)
试试这个:
SELECT user.id, user.name, f.to, friend.id, friend.name
FROM user
LEFT JOIN friends f ON user.id = f.from
LEFT JOIN user friend ON friend.id = f.to
LIMIT 0, 200
请注意,我在加入条件中将user
替换为friend
。