一次SQL更新多行

时间:2016-02-23 06:02:47

标签: mysql sql database mysqli pdo

mysql> SELECT * FROM options;
+----+------+---------+
| id | name | value   |
+----+------+---------+
|  1 | aa   | a value |
|  2 | bb   | b value |
|  3 | cc   | c value |
|  4 | dd   | d value |
|  5 | ee   | e value |
+----+------+---------+

我有一个选项表。

我想在同一查询中更新多行(使用where case name)。

假设我一次更新options.name aa bb 。这是像

这样的更新
+----+------+---------+
| id | name | value   |
+----+------+---------+
|  1 | aa   |aa value |
|  2 | bb   |bb value |
+----+------+---------+

我尝试通过谷歌搜索解决这个问题,但我不能。

请帮我解释一下这个问题。

2 个答案:

答案 0 :(得分:1)

使用 UPDATE WHERE .. IN

UPDATE options
SET value = 'any value'
WHERE name IN ('aa', 'bb)

答案 1 :(得分:1)

这是你正在寻找的吗?

Update options
Set value = name + ' value'
where name in ('aa', 'bb')