mysql - 如何在特定列的一个查询中更新多行值
问题描述
UPDATE job_seekers SET js_email =
CASE js_email
WHEN "Wbsirota@gmail.com" THEN "bsirota@gmail.com"
WHEN "@nautiyalanuj@gmail.com"THEN "nautiyalanuj@gmail.com"
WHEN ".agiletestanalyst@gmail.com" THEN "agiletestanalyst@gmail.com"
END ) WHERE js_email IN ("wbsirota@gmail.com",
"@nautiyalanuj@gmail.com",
".agiletestanalyst@gmail.com");
解决方案
UPDATE
job_seekers
SET
js_email = CASE WHEN js_email = 'Wbsirota@gmail.com' THEN
'bsirota@gmail.com' WHEN js_email = '@nautiyalanuj@gmail.com' THEN
'nautiyalanuj@gmail.com' WHEN js_email = '.agiletestanalyst
@gmail.com' THEN 'agiletestanalyst@gmail.com' ELSE js_email END
WHERE
js_email IN ("wbsirota@gmail.com","@nautiyalanuj@gmail.com",
".agiletestanalyst@gmail.com");
示例如下
UPDATE
dbo.TestStudents
SET
LASTNAME = CASE WHEN LASTNAME = 'AAA' THEN 'BBB'
WHEN LASTNAME = 'CCC' THEN 'DDD'
WHEN LASTNAME = 'EEE' THEN 'FFF' ELSE LASTNAME END
WHERE
LASTNAME IN ('AAA', 'CCC', 'EEE');
推荐阅读
- go - time.ParseInLocation,位置为零
- javascript - 带有 Node.js 轴的反应请求,CORS 中的问题
- kdb - KDB - 时间函数结果成为后续行函数的输入
- python-3.x - 关于类、属性和方法的问题
- webgl - 如何检测 WebGL 中点击的对象?
- excel - 无法设置 Range 类的 FormulaArray -- 小于 255,不使用替换方法
- docker - 无法停止在我的 mac 上运行的 docker 容器
- php - 如何从 Laravel 的指定日期知道周数?
- c# - 实体框架核心api保存一对多关系数据
- sql - 在第一个最高分之后找到最低分