在MySQL中,是否可以保持查询结果独立于子查询的结果?

时间:2012-09-25 19:34:00

标签: php mysql database

我需要向用户输出搜索结果列表。

但是,我选择显示哪些结果取决于另一个查询的结果。

所以:

Query 1,
Query 2,

while($row=mysql_fetch_array($result)
    {
    (IF (Query 2 is xyz)
       {
        Output $row[1]
       }
    }

因此只有通过特定查询2参数的query1结果才会打印出来。

最终,我的问题是,我可以同时保留2个单独的查询,将结果放入不同的变量中吗?即$ result1和$ result2?或者新查询是否覆盖了最后一个?

2 个答案:

答案 0 :(得分:1)

如果我理解你的问题......

$query = mysql_query("SELECT * FROM `Query 1`");

while ($row=mysql_fetch_array($query)) {

$rows = $row['this'];

 if (mysql_numrows(mysql_query("SELECT * FROM `Query 2` WHERE `something` = '$rows' ")) != 0) {
echo $rows;
}

}

答案 1 :(得分:1)

你可以这样做:

$result1 = mysql_query('...');
$result2 = mysql_query('...');

然后你可以访问它们。 E.g。

while($row = mysql_fetch_array($result1/$result2)){ ... }

每个变量都将存储一个结果对象。再次调用mysql_query不会覆盖它,因为玩具已将其分配给变量。只要您不覆盖该变量,您就可以访问该特定查询结果对象。