我有2个表用户表(user_id,fname,lname,dob等)和 are_friends 表 (userA_id,userB_id)。我一直试图做这个查询一段时间,我需要它列出所有朋友的user_id。
到目前为止,我得到了什么,
SELECT
U.user_id,
U.fname,
U.lname
FROM are_friends A, user U
WHERE
A.user_id = U.user_id
AND (
A.user_id = 1
OR A.user_id IN (SELECT userB_id FROM are_friends WHERE userA_id = 1)
);
任何帮助将不胜感激。
答案 0 :(得分:3)
尝试使用这样的INNER JOIN
:
SELECT u2.user_id, u2.fname, u2.lname
FROM user u
INNER JOIN are_friends f ON f.userA_id = u.user_id
INNER JOIN user u2 ON u2.user_id = f.userB_id
WHERE u.user_id = 1
您可以更改WHERE
子句以专门获取其他用户ID的朋友。