基于同一while循环中先前查询的数据进行查询

时间:2016-07-05 12:54:04

标签: php mysql

我需要根据前面的数据创建一个新查询。 但是第二个$ _row覆盖了第一个,我需要来自1个范围内的两个查询的数据。非常感谢。

$_query = "SELECT * FROM t_forum";

$_topics = $_PDO ->query($_query);


if ($_topics ->rowCount() > 0)
{
while($_row = $_topics -> fetch(PDO::FETCH_ASSOC))
{



    $_user_id = $_row['d_op']; //data to make new query 

    $_gebruiker = $_PDO ->query("SELECT * FROM t_users WHERE d_user_id =                  '$_user_id'");


        while ($_row = $_gebruiker -> fetch (PDO::FETCH_ASSOC)){


    //only data from second query
    }}

3 个答案:

答案 0 :(得分:0)

使用LEFT JOIN

SELECT * FROM t_forum F LEFT JOIN t_users U ON F.d_op = U.d_user_id 

从此查询中,您将从两个表中获取数据

答案 1 :(得分:0)

你可以在mysql中使用join操作。你会得到结果。

select * from t_forum as a 
join t_users as b 
on a.d_op=b.d_op

答案 2 :(得分:0)

您可以将两个查询合并为一个:

select * from t_users, t_forum where t_forum.d_op= t_users.d_user_id