MySQL选择多维数组

时间:2015-07-15 14:53:22

标签: php mysql arrays multidimensional-array

我有以下多维数组,在某些数据库选择后生成:

<?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上找到查询中单个项目的解决方案,但不能找到多维数组中需要完全相同的两个值。谢谢!

1 个答案:

答案 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;
?>

希望它有所帮助。