我正在使用mysql db。
我有2张桌子。
我正在构建一个用户建议列表,从2个表中选择用户列表。
首先table (users)
拥有用户信息。
第二个table (followers)
包含以下列表。
我需要选择建议
我的查询就像
SELECT a.*, b.userid, b.friendid, a.userid
FROM users a,followers b
WHERE a.userid != '$uid'
AND (b.friendid != a.userid AND b.userid != '$uid')
但是此查询还会返回所有数据,包括已经跟踪过的用户。
请帮帮我。 提前谢谢。
答案 0 :(得分:0)
您没有加入这两个表,因此您将获得WHERE子句未排除的所有内容。
您的问题有点不清楚,但我怀疑您正在寻找:
SELECT a.*, b.userid, b.friendid, a.userid
FROM users a,followers b
WHERE a.userid != '$uid'
AND b.userid = a.userid
AND b.friendid != a.userid
答案 1 :(得分:0)
尝试
select * from users
where userid != '$uid' and
userid not in (select friendid from followers where userid='$uid')