先查看一下数据
SELECT b.email_remind_id,b.send_status FROM b_email_msg_remind b;
然后执行
UPDATE b_email_msg_remind SET send_status =CASE WHEN email_remind_id = '234746e8-4cab-444c-86ee-ea73c57cb7de' THEN 1 WHEN email_remind_id = '48d4a578-141e-421c-9eed-0c26de4b8f48' THEN 1 WHEN email_remind_id = '674969cd-ae86-4a5c-b813-57cc6183f8e5' THEN 1 WHEN email_remind_id = '991664d6-4fe3-47c7-add7-e861f617992d' THEN 1 END
工具的日志为:
看到修改了5行数据,但是只有4个WHEN
修改后的数据是
这个没有WHEN的条件的数据send_status被改成了null
我们现在加上ELSE
SELECT b.email_remind_id,b.send_status FROM b_email_msg_remind b;
然后执行
UPDATE b_email_msg_remind SET send_status =CASE WHEN email_remind_id = '234746e8-4cab-444c-86ee-ea73c57cb7de' THEN 1 WHEN email_remind_id = '48d4a578-141e-421c-9eed-0c26de4b8f48' THEN 1 WHEN email_remind_id = '674969cd-ae86-4a5c-b813-57cc6183f8e5' THEN 1 WHEN email_remind_id = '991664d6-4fe3-47c7-add7-e861f617992d' THEN 1 ELSE send_status END
工具的日志为:
可以看到这次只有4条数据被修改
修改后的数据是
红框的数据没有被修改