-2

我有以下表格:

user (id, firstname, lastname)

follow (id, follower_id, following_id)

现在假设我们有 id 为 1、2、3、4、5 的用户

并且user_id = 1已经关注用户 2 和 3。

现在我想写一个查询,给我user_id's(user_id = 1)不关注的(4 和 5)。

有人可以帮忙吗。

4

3 回答 3

1

这应该这样做:

SELECT id FROM user 
WHERE 
    id NOT IN 
    (
        SELECT following_id 
        WHERE follower_id = 1 --(or you can use any user i, i used 1 to show an example)
    )
于 2013-12-09T05:56:35.223 回答
0
SELECT * FROM user_table
LEFT JOIN follow_table ON user_table.id = follow_table.following_id
WHERE follow_table.following_id IS NULL
于 2013-12-09T05:57:03.317 回答
0

尝试这个:

SELECT * FROM user_table ut
LEFT JOIN follow_table ft ON ut.id = ft.following_id AND ft.follower_id = 1
WHERE ft.following_id IS NULL
于 2013-12-09T05:59:19.937 回答