【发布时间】:2018-03-29 07:20:44
【问题描述】:
我正在使用表格来表示朋友/朋友请求。基本上我的想法是有一个这样的表结构:
CREATE TABLE friends(
user_id NUMERIC NOT NULL,
friend_user_id NUMERIC NOT NULL
UNIQUE (user_id,friend_user_id)
)
当用户想要创建朋友时,您需要添加一行:
INSERT INTO friends(user_id,friend_user_id) VALUES($1,$2)
然后,当其他用户接受好友请求时,您只需添加上一行的倒数(即,从技术上讲,收件人将向发件人发送好友请求,从而完成好友关系):
INSERT INTO friends(user_id,friend_user_id) VALUES($2,$1)
我的问题:
如果我想获取用户的所有朋友,我必须获取具有该用户 ID 的所有行,并且我想将其与包含用户信息的另一个表进行内部连接,我将如何在查询中检查行反比关系是否存在?
附:我想我可以很容易地做多个查询,但如果可能的话,我宁愿只做一个查询。
【问题讨论】:
-
您好,欢迎来到 SO。太好了,您能够弄清楚。既然您解决了问题,请将其添加为答案并将其标记为已接受或删除此问题。我推荐第一个选项。干杯。
-
它不会让我将其标记为接受 2 天
-
没问题。在那之后回来并标记它。
标签: sql postgresql