基于自引用表查询用户好友

4zcjmb1e  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(350)

我有一个用户表和一个自引用表,因此可以将用户分配为彼此的朋友。表如下所示:

(图片来源:image.frl)
我想查询该表并获取某个特定用户的所有好友(例如按用户id)。我不知道如何查询它,它知道它应该查找用户id的所有朋友id,并查找用户表中与这些朋友id相关联的所有用户。
有人能告诉我们怎么做吗?我正在使用mysql。

wwtsj6pe

wwtsj6pe1#

您的问题的简单答案是(通过用户id进行查找)

SELECT friends.*
FROM user AS friends
JOIN user_has_friends ON friends.id = user_has_friends.friend_id
WHERE user_has_friends.user_id = *ID HERE*

如果要按名字或任何其他列查找,则必须向users表中添加另一个联接。

相关问题