让说:获取所有用户ID的朋友给unnexpected结果
table users(id, name, ..)
table friends(uid, fid)
我怎么才能得到33456的用户ID的朋友?
SELECT fid idd, name
FROM users,
friends
WHERE uid = 33456
AND fid = id
但会给我unnexpected结果
让说:获取所有用户ID的朋友给unnexpected结果
table users(id, name, ..)
table friends(uid, fid)
我怎么才能得到33456的用户ID的朋友?
SELECT fid idd, name
FROM users,
friends
WHERE uid = 33456
AND fid = id
但会给我unnexpected结果
SELECT id, fid, name
FROM users,friends where users.id=friends.fid
WHERE users.id = 33456
SELECT id, fid, name
FROM users
INNER JOIN friends ON users.id=friends.fid
WHERE users.id = 33456
select id,name from users where id in (select fid from friends where uid=33465)
这将返回所有的ID与你的朋友的名字。
SELECT b.fid, c.name
FROM users a INNER JOIN friends b ON a.id = b.uid
INNER JOIN users c on b.fid = c.id
WHERE a.id = 33456
SELECT u.name,u.id
FROM users u
WHERE u.id IN
(
SELECT f.fid
FROM users u INNER JOIN friends f ON u.id = f.fid
WHERE f.uid = 33456
)
尝试使用完全合格的名字,如friends.uid等。这将删除名称冲突的可能性。 – AurA
你想得到什么?朋友的名字? –