我正试图找出一种从表格中选择一小部分随机ID的有效方法。
使用IN运算符似乎是正确的选择,但我不明白如何以我想要的方式使用结果。查询完成后,如何使用结果分配给特定变量?或者有没有办法将值作为查询的一部分进行分配?
$red_car1=1001;
$blue_car2=200;
$green_car3=56;
$query_cars= sprintf("SELECT * FROM cars WHERE id IN (%s, %s, %s)", $red_car1, $blue_car4, $green_car3);
$Cars1 = mysql_query($query_cars, $db) or die(mysql_error());
$red_car1_vin = $row_Cars1['vin'];
$blue_car1_vin = $row_Cars1['vin'];
$green_car1_vin = $row_Cars1['vin'];
答案 0 :(得分:1)
熟悉准备好的陈述。准备一次语句并用n个变量执行n次。它效率很高。 或者仔细考虑你的结果:
$tmp = array();
while($row_Cars1 = mysql_fetch_array($Cars1))
{
$tmp[$row_Cars1['id']] = $row_Cars1;
}
现在您有一个包含结果的关联数组,您可以像以下一样使用它:
$red_car1_vin = $tmp[$red_car1];
答案 1 :(得分:0)
如果您的服务器端语言是PHP,那么您的代码应该像 -
$con=mysqli_connect("your host","user","password","your db");
$red_car1=1001;
$blue_car2=200;
$green_car3=56;
$query_cars= "SELECT * FROM cars WHERE id
IN (".$red_car1.",".$blue_car2.",".$green_car3.")";
$Cars1 = mysqli_query($con,$query_cars) or die(mysql_error());
while($row = mysqli_fetch_array($Cars1))
{
echo $row['<<Your Desired field name1>>'] . " " . $row['<<Your Desired field name2>>'];// and so on
echo "<br />";
}
mysqli_close($con);
此外,您可以在此处获得更多有用的信息 - http://www.w3schools.com/php/php_mysql_select.asp
由于