Php 使用一个mysql的结果进行第二次查询

Php 使用一个mysql的结果进行第二次查询,php,mysql,Php,Mysql,我有两张桌子: 职位-持有职位信息 侦听-保存有关您正在侦听的其他用户的信息。(您希望查看的用户帖子) listen的结构是: id(唯一id) userid(用户唯一的id) listenid(他们也在侦听的用户的id) 我如何从listen中收集所有条目,然后使用这些条目查找与找到的listenid值匹配的所有帖子,以便创建我要查看的组合用户帖子的查询?您可以使用简单的自然连接或其他答案中给出的直接连接来完成此操作 SELECT posts.* FROM listen JOI

我有两张桌子:

  • 职位-持有职位信息
  • 侦听-保存有关您正在侦听的其他用户的信息。(您希望查看的用户帖子)
listen的结构是:

  • id(唯一id)
  • userid(用户唯一的id)
  • listenid(他们也在侦听的用户的id)

我如何从listen中收集所有条目,然后使用这些条目查找与找到的listenid值匹配的所有帖子,以便创建我要查看的组合用户帖子的查询?

您可以使用简单的自然连接或其他答案中给出的直接连接来完成此操作

SELECT  posts.*
FROM    listen
JOIN    posts
ON      posts.userid = listen.listenid
WHERE   listen.userid = @current_user
select 
  *
from 
  posts, listen 
where 
  listen.userid == $active_user and 
  posts.userid = listen.userid

你可能想对你带来的专栏更加挑剔。我想你说的是这样的:

select postid from posts 
where userid in
(
    select listenid from listen
    where userid = CURRENT-USER
)

这是假设表posts有一个userid字段。

简单的连接不起作用吗

select 
 posts.* 
from 
 posts
inner join 
 listen
on 
 listen.listenID = posts.userID
where 
 listen.userID = ACTIVEUSER

为了让我们帮助您,您需要提供更多关于表格结构的信息,并更清楚地解释您正在尝试做什么。酷,三个答案,好的,都不同。请在问题中包括所有相关表格。以及您尝试过的SQL。