我有以下多维数组,在某些数据库选择后生成:
<?php
$array = array (
array("X"=>500, Y="400"),
array("X"=>234, Y="347"),
array("X"=>845, Y="345"),
array("X"=>264, Y="916")
);
?>
现在我需要在一个表中进行选择,其中BOTH字段X和Y在数组中。怎么做?像:
SELECT FROM table WHERE
(X=500 AND Y=400) OR
(X=234 AND Y=347) OR
(X=845 AND Y=345) OR
(X=264 AND Y=916)
;
我只能在StackOverflow上找到查询中单个项目的解决方案,但不能找到多维数组中需要完全相同的两个值。谢谢!
答案 0 :(得分:1)
如果我理解,您需要读取您的数组并将其传递给您的SQL。
类似的东西:
<?php
$where = null;
foreach ($array as $a)
{
if (is_null($where))
{
$where = " WHERE (X = " . $a['X'] . " AND Y = " . $a['Y'] . ")";
}else
{
$where .= " OR (X = " . $a['X'] . " AND Y = " . $a['Y'] . ")";
}
}
$sql = "SELECT * FROM table " . $where;
?>
希望它有所帮助。