我在oracle中有一个表,它有4个具有以下值的属性
attribute_a attribute_b attribute_c attribute_d
abcd1 1 0
abcd1 2 1
abcd1 3 0
def1 1 1
def1 2 1
我想用'逻辑AND'来更新attribute_d。根据attribute_c中的值,将值赋入attribute_d 即对于abcd1,逻辑AND为0.我想在attribute_d中为abcd1更新值为0的表 对于def1,我想在attribute_d中为def1更新值为1的表。我可以使用MERGE来完成这个,如果有人能给我一个非常感谢的查询。
答案 0 :(得分:0)
首先,我同意@ jarlh关于存储计算值的评论。
解决方案:
UPDATE [TableName]
SET attribute d = (CASE WHEN attribute_b = attribute c THEN 1 ELSE 0 END)