1

有什么办法可以运行以下“逻辑代码”来实际工作?

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

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

有任何想法吗?

4

6 回答 6

13

您可以为此使用IN运算符。

DELETE ... WHERE id IN (3,4,5,9)
于 2009-08-26T22:03:40.727 回答
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')");

有关更多信息,请参阅:

于 2009-08-26T22:04:24.267 回答
3

使用WHERE IN从句。

DELETE FROM users WHERE id IN (3, 4, 5, 9);
于 2009-08-26T22:04:37.043 回答
2

您可以使用in而不是=.

例如,

DELETE FROM users WHERE id IN (3,4,5,9);
于 2009-08-26T22:04:23.987 回答
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)

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

于 2009-08-26T22:05:43.190 回答
2
$sql=mysql_query("DELETE * FROM table WHERE id IN (3,4,5,9)");
于 2009-08-26T22:07:02.483 回答