【SQL】update中使⽤casewhen
1.创建测试表及数据
CREATE TABLE graduates (
name varchar(255) ,
income int4(255)
);
INSERT INTO graduates VALUES ('桑普森', '400000');
INSERT INTO graduates VALUES ('迈克', '30000');
INSERT INTO graduates VALUES ('怀特', '20000');
INSERT INTO graduates VALUES ('阿诺德', '20000');
INSERT INTO graduates VALUES ('史密斯', '20000');
INSERT INTO graduates VALUES ('劳伦斯', '15000');
INSERT INTO graduates VALUES ('哈德逊', '15000');
INSERT INTO graduates VALUES ('肯特', '10000');
INSERT INTO graduates VALUES ('贝克', '10000');
INSERT INTO graduates VALUES ('斯科特', '10000');
2.如果我们想把⼯资为20000的减半,⼯资为15000的加500,使⽤case when⼀条SQL就可以完成,⽽且速度还⾮常快。
UPDATE graduates
SET income =
CASE
WHEN income = 20000 THEN
income * 0.5
WHEN income = 15000 THEN
income + 500
ELSE income
END;
else income,⾮常重要,如果不指定else的话,其他不符合条件的⼈⼯资会被置为null。
sql中update什么意思select * from graduates;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。