带有OR条件数组的MySQLi

时间:2014-03-10 14:21:49

标签: php arrays mysqli

说一个包含序列号的数组变量$i。示例:$i=array("1", "15", "20", "23");此变量由$_POST设置。

MySQLi查询可以删除数组中存在序列号的行。即如果序列号= 1或15或20或23,则删除该行。如何将其编写为单个MySQLi预处理语句?

我尝试使用foreach,但该逻辑将执行n次查询,其中n是数组的大小。

foreach($i as $sno)// Only the logic I use
{
    DELETE FROM `table` WHERE `sno`=?
    bind_param("i", $sno);
    execute();
}

如何简化,以便可以将查询重写为sno=[1] or [2] or [3] or ... [n]

1 个答案:

答案 0 :(得分:0)

您可以使用 IN

这是逻辑,

DELETE FROM table WHERE sno IN ($i)