case when的使用方法主要有两种:
第一种:
UPDATE USER SET
USERNAME =
CASE
WHEN ID = 1 THEN 'USERNAME1'
WHEN ID = 2 THEN 'USERNAME2'
WHEN ID = 3 THEN 'USERNAME3'
END
,
PASSWORD =
CASE
WHEN ID = 1 THEN 'PASSWORD1'
WHEN ID = 2 THEN 'PASSWORD2'
WHEN ID = 3 THEN 'PASSWORD3'
END
以上形态中case后未跟任何内容,而是采取了搜索的方式进行更新,也就是说在整张表中搜索ID=1,ID=2,ID=3的数据进行更新。
第二种:
UPDATE USER SET
PASSWORD =
CASE ID
WHEN 1 THEN 'PASSWORD1'
WHEN 2 THEN 'PASSWORD2'
WHEN 3 THEN 'PASSWORD3'
END,
USERNAME =
CASE ID
WHEN 1 THEN 'USERNAME1'
WHEN 2 THEN 'USERNAME2'
WHEN 3 THEN 'USERNAME3'
END;
case后跟某字段,然后通过判断该字段的值来进行更新,一般情况下两者通用。
批量更新方法:
需求描述:需要批量更新数据,但是需要更新的字段和信息不一致。
方法一:使用myba