我有几个MySQL表,我在这里运行查询:
$sql = "
SELECT my_item
FROM t1
, t2
WHERE t1.id='$id'
AND t2.spec IN (208, 606, 645)
AND t1.spec = t2.spec
";
注意我正在使用WHERE IN。
接下来,我运行一个查询并使用WHILE来尝试获取结果:
$retval = mysql_query($sql) or die('Query failed: ' . mysql_error());
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
$myitem = $row['my_item'];
echo "My item is $myitem<br />\n";
}
根据SELECT语句中IN语句中的三个选项,打印三个结果,每个结果都有一个不同的$ myitem值。
如何在每个单独的变量中提取和存储这三个值中的每一个?
谢谢!
答案 0 :(得分:2)
使用join
SELECT my_item FROM t1 join t2
on t1.spec=t2.spec
WHERE t1.id='$id'
AND t2.spec IN (208, 606, 645)
或创建数组
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
$myitem[] = $row['my_item'];
}
使用这个数组: -
foreach( $myitem as $myitems){
echo "My item is $myitems<br />\n";
}
或使用索引
echo "My item is $myitems[0]";
答案 1 :(得分:0)
您可以将$row['my_item']
存储在数组中。
请参阅PHP arrays