获取结果并将它们用于另一个查询mysql php

时间:2017-12-28 19:51:59

标签: php mysql

如何使用获取的结果来使用值来进行另一个查询?我试图在php.net上找到信息,但无法弄明白。

$sql = "SELECT id FROM orders WHERE customer_id=$customer_id";
$query = mysqli_query($conn, $sql);
while($row= mysqli_fetch_array($query))  {
    $ordersid=$row['id'];
}

$ordersid返回:13 - 订单编号1和3。 这是我的难点。如何制作$orderid(1,3)

之后我想在另一个查询中使用1和3:

SELECT * FROM orderdetails WHERE order_id IN ($orderid)

这样,没有直接关系,将从第一个查询到第二个查询的所有答案。

我的错误在哪里?

1 个答案:

答案 0 :(得分:0)

您可以将结果放入数组并使用如下:

    $a = array();

    $sql = "SELECT id FROM orders WHERE customer_id=$customer_id";
    $query = mysqli_query($conn, $sql);
    while($row= mysqli_fetch_array($query))  {

        array_push($a, $row['id']);

    }

   $data = implode("', '", $a);

在你的下一个查询中如下:

SELECT * FROM orderdetails WHERE order_id IN ('$data')