-3

EDIT:

Here is my table:

[user_friend] table:

  • id, -user_id
  • friend_id
  • time

[late] table:

  • id
  • user_id
  • reason
  • check_in_time

Now, let's just say the current user's id is '1', I want to search the table user_friend for all the rows with the user_id of '1' then put all the friend_id all the rows with user_id of '1' in a var or something(Let's just say there 3 rows with the friend_id of 2,3 $ 4 respectively).

Now I want to get the id of the rows in the late table with the user_id of any of the current user's friend's id(For this case it's 2,3 & 4). Hope it helps

4

1 回答 1

0

更新

如果我正确理解了您的新信息,这将从当前= 1friend_id的表中选择一个 's列表。然后它将使用这个's 列表来选择所有这些's 出现的条目。user_frienduser_idfriend_idlatefriend_id

SELECT * FROM late WHERE user_id IN (SELECT friend_id FROM user_friend where user_id=1);

您也可以使用表连接来实现相同的目的。但这并不容易解释。

原始回复 建议这样做的一种方法可能是使用 aWHERE IN (SUB SELECT)但这可能不是最有效的......这将取决于您的数据结构和数据量 - 但您没有提供足够的信息......

就像是:

SELECT * FROM late WHERE user_id IN (SELECT * FROM user_friends WHERE id IN (1,2,3));

正如我所说,有最确定的更好方法 - 但更多信息会有所帮助。

于 2013-03-25T14:45:51.560 回答