如何使用MySQL一个查询更新多行?

时间:2014-03-19 21:49:25

标签: mysql sql

我目前正在运行更多数据库更新查询,如下所示:

UPDATE table SET status = 1 WHERE id = 3
UPDATE table SET status = 1 WHERE id = 7
UPDATE table SET status = 1 WHERE id = 9
UPDATE table SET status = 1 WHERE id = 18
etc...

问题:

如何在一个查询中运行这些查询?

3 个答案:

答案 0 :(得分:2)

UPDATE table SET status = 1 WHERE id in (3,7,9,18,...)

答案 1 :(得分:1)

如果您需要更新给定列表中的某些行,可以使用IN()

UPDATE table SET status = 1 WHERE id IN (3, 7, 18);

如果您需要更新所有行,请不要添加任何WHERE条件

UPDATE table SET status = 1;

答案 2 :(得分:0)

如果您的意思是如何在一个命令中更新多个行,这取决于您的查询,但是如果您的问题更具体,并且您需要运行1个单个查询而不是上述所有查询,那么您可以尝试这个:

 UPDATE table SET status = 1 WHERE id IN (3,7,9,18)