我有一个查询,它返回 2 个数组,每个数组可以有 0 到 5 个结果。我需要获取数组的结果并使用它们来运行第二个查询,其中 where 语句中的列由数组分配
这是基本代码
$result = $conn->query("SELECT UsedQty,NewQty FROM Legend where Name like '$Use%'");
while($row = $result->fetch_assoc()) {
$UsedQty[$g]=$row['UsedQty'];
$NewQty[$g]=$row['NewQty'];
$g++;
}
$result = $conn->query("select * from remainder where po = '$po' and
(($UsedQty[0]>0 or $UsedQty[1]>0 or $UsedQty[2]>0) or
($NewQty[0]>0 or $NewQty[1]>0 or $NewQty[2]>0)) limit $cnt,1");
并且只要所有变量的值都有效,但如果数组只有 1 或 2(或 0)个值,则它将不起作用
我也试过
$result = $conn->query("select * from remainder where po = '$po' and
($UsedQty[$g]>0) limit $cnt,1");
它必须在单个查询中完成,因为变量 $cnt 跟踪记录和订单——封闭系统,因此安全注入不是问题
慕后森