有没有什么办法可以运行以下“逻辑代码”来实际工作?在where子句中指定多个项目
$sql=mysql_query("DELETE FROM users WHERE id='3,4,5,9'");
我基本上是想给我的用户勾选框打勾所有的显示行,他们可以再挑去除哪些。我只想删除指定了id的多行记录?
任何想法?
有没有什么办法可以运行以下“逻辑代码”来实际工作?在where子句中指定多个项目
$sql=mysql_query("DELETE FROM users WHERE id='3,4,5,9'");
我基本上是想给我的用户勾选框打勾所有的显示行,他们可以再挑去除哪些。我只想删除指定了id的多行记录?
任何想法?
什么:
$sql=mysql_query("DELETE FROM users WHERE id IN (3, 4, 5, 9)");
提供:
,当然,如果你的IDS是字符串:
$sql=mysql_query("DELETE FROM users WHERE id IN ('3', '4', '5', '9')");
欲了解更多信息,请参见:
您可以使用IN运算符。
DELETE ... WHERE id IN (3,4,5,9)
您可以使用in
而不是=
。
例如,
DELETE FROM users WHERE id IN (3,4,5,9);
使用WHERE IN
子句。
DELETE FROM users WHERE id IN (3, 4, 5, 9);
您是否尝试过使用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是用于在表中的有效标志的默认值。
$sql=mysql_query("DELETE * FROM table WHERE id IN (3,4,5,9)");
IN()的参数不一定是数字。他们只需要价值。 – 2009-08-26 22:05:55
@Bill:我的意思是“不要使用引号如果数字,因为那些将不需要 - 我已经编辑我的帖子添加相同的示例考虑ID是字符串,希望它会让我的话更清晰) – 2009-08-26 22:07:08
是的,谢谢你的澄清,我已经给你+1了。:-) – 2009-08-26 23:01:52