如何在保持字段的特定值的同时更新字段?

piok6c0g  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(382)

我有一张这样的table:

// users 
+----+---------------+ 
| id |      name     |
+----+---------------+
| 1  | Martin        |
| 2  | Peter ♦ |
| 3  | Ali           |
+----+---------------+

我只想更新一下 name 列并设置新值( Jack )所有的记录。但我也需要保持 ♦ 到处都是。所以这是预期的结果:

+----+---------------+ 
| id |      name     |
+----+---------------+
| 1  | Jack          |
| 2  | Jack ♦  |
| 3  | Jack          |
+----+---------------+

我的问题是:

UPDATE users SET name = "Jack" WHERE 1;

我的问题不关心 ♦ . 如何添加?

u2nhd7ah

u2nhd7ah1#

嗯。这是你想要的吗?

UPDATE users
    SET name = (CASE WHEN name like '% ♦' then 'Jack ♦' else 'Jack' end)
    WHERE 1;
y1aodyip

y1aodyip2#

UPDATE users
    SET name = (CASE WHEN name like '% ♦ %' then 'Jack ♦' else 'Jack' END)
    WHERE 1;

相关问题