在用户表表中查找id

时间:2017-10-08 02:11:59

标签: mysql postgresql relational-database

我有一个users表和一个名为user_followers的数据透视表 follower_idfollowed_id引用用户表中的id。

要获取用户的关注者,我可以获取此用户的ID,并查找followed_id等于此特定user_id的字段。这很好,我得到这些行并在users表中查找关注者的id。我的问题是,如果我需要查找与这些ID匹配的用户(可能很多),我怎么能在找到时停止查找此ID。

示例:我得到了这些ID:3,4,9,10,12;我开始在用户表中查找具有其中一个id的任何行,并且当找到3时(例如)我不想再寻找此ID(因为已经找到)但是寻找4,9, 10和12等等。

也许有一些我遗漏的东西可以解决这个问题,但我不知道这是如何在数据库中幕后工作的。 (我正在使用Postgres。)

如果可能,我想知道如何使用Mongodb。

1 个答案:

答案 0 :(得分:1)

您无需担心这一点。单个查询可以完成所有操作:

SELECT u.* -- or just the columns you need.
FROM   user_followers AS f
JOIN   users AS u ON u.user_id = f.follower_id
WHERE  followed_id = $1;
相关问题