在where子句中指定多个项目

时间:2009-08-26 22:03:01

标签: mysql where-clause delete-row

有什么方法可以运行以下'逻辑代码'来实际工作吗?

$sql=mysql_query("DELETE FROM users WHERE id='3,4,5,9'");

我基本上想给我的用户一个勾选框来勾选所有显示的行,然后他们可以选择要删除的行。我只想删除指定了id的多行?

有什么想法吗?

6 个答案:

答案 0 :(得分:13)

您可以使用IN运算符。

DELETE ... WHERE id IN (3,4,5,9)

答案 1 :(得分:5)

怎么样:

$sql=mysql_query("DELETE FROM users WHERE id IN (3, 4, 5, 9)");

提供:

  • 您的ID在数据库中是数字
  • 您要删除用户3,删除用户4,删除用户5,删除用户9

当然,如果您的ID是字符串:

$sql=mysql_query("DELETE FROM users WHERE id IN ('3', '4', '5', '9')");

有关更多信息,请参阅:

答案 2 :(得分:3)

使用WHERE IN条款。

DELETE FROM users WHERE id IN (3, 4, 5, 9);

答案 3 :(得分:2)

您可以使用in代替=

如,

DELETE FROM users WHERE id IN (3,4,5,9);

答案 4 :(得分:2)

您是否尝试过使用IN

DELETE FROM users WHERE id IN (3,4,5,9)

虽然在我的应用程序中我从不删除任何内容。相反,我有一个活动标志,我设置为false。

UPDATE users set active=0 where id in (3,4,5,9)

所有查询都有active=1的where子句,1是表中活动标志的默认值。

答案 5 :(得分:2)

$sql=mysql_query("DELETE * FROM table WHERE id IN (3,4,5,9)");