我有两栏。 'A'由枚举值(0,1,2)组成,其他'B'为可空布尔值。我需要根据A更新“ B”。
Case 0 -> null
Case 1 - false
Case 2 - true
正确的方法是什么?
答案 0 :(得分:1)
这可以使用CASE表达式完成:
update the_table
set b = case a
when 0 then null
when 1 then false
when 2 then true
end;
答案 1 :(得分:1)
在SQL中,我们可以使用CASE语句根据条件更新列值。
UPDATE TableName SET B = CASE
WHEN A= 0 THEN NULL
WHEN A= 1 THEN False(0)
WHEN A = 2 THEN True(1)
END