在while循环中使用mysql查询获取上一个查询时出错

时间:2013-04-17 14:18:41

标签: php mysql syntax nested

我有2个查询。 我正在应用第一个选择查询,并使用my_fetch_array通过while循环获取结果,但是,在此期间,我正在使用另一个选择查询,但此时我收到错误。

我不能在里面使用另一个选择吗?

$i = 1;
$result1 = mysql_query("SELECT x, count(*) FROM table1 group by x ORDER BY count(*) desc");

while ($rowRes1= mysql_fetch_array($result1 ))
{
echo "<tr>";
echo "<td ALIGN=CENTER style=width:5%>" . $i . "</td>";
echo "<td ALIGN=CENTER style=width:40%>" . $rowRes1['0'] . "</td>";
echo "<td ALIGN=CENTER style=width:10%>" . $rowRes1['1'] . "</td>";

$result2 = mysql_query("SELECT x FROM data where x = $rowRes1['0'] ORDER BY y ASC LIMIT 1")

while ($rowRes2= mysql_fetch_array($result2 ))
{ 
echo "<td ALIGN=CENTER style=width:10%>" .     $rowRes2['0'] . "</td>";
}
$i++;
}

1 个答案:

答案 0 :(得分:1)

PHP无法在双引号字符串中解释包含$ rowRes1 ['1']等数组访问器的字符串。

将数据存储在另一个变量中,例如$ rowRes1Col = $ rowRes1 ['0'];并在字符串中使用它。