mySQL PHP WHERE IN返回一个表 - 如何解析该表?

时间:2013-10-09 22:09:21

标签: php mysql sql where where-in

如何使用SQL WHERE IN(x,y)语句返回的数据与PHP?

                $sqlquery = "SELECT * FROM schedules WHERE userid IN ('35','101','45')";

                if ($test_stmt=$mysqli->prepare($sqlquery)) { //Get all data in schedule row
                    $test_stmt->execute(); //Execute the prepared query
                    $test_stmt->store_result(); //Store result
                    $test_stmt->fetch();
                    do something...

                }
                else {
                    return null;
                }

            }

SQL查询返回正确的三个表行,我只是不确定如何使用PHP访问它们。

如何创建一个数组来存储查询返回的值?或者有更好的方法来存储这些数据以便以后进行操作吗?

由于

2 个答案:

答案 0 :(得分:2)

最常见的方法是通过类似于以下内容的循环:

$results=array();
while($row=$test_stmt->fetch())
{
    $results[]=$row;
}

这会将行插入结果变量,即数组。在循环结束时,数组将包含查询返回的所有内容的副本。

您还可以在结果中选择对特定列执行的操作,如下所示:

$results=array();
while($row=$test_stmt->fetch())
{
    $results[]['ID']=$row['ID'];
}

这假设结果中有一个名为“ID”的列。

答案 1 :(得分:0)

//$test_stmt->store_result(); //not needed
$rows = $test_stmt->fetchAll(PDO::FETCH_ASSOC); //or other fetch mode

print_r($rows);  //$rows is an array of rows you can loop through
相关问题