更新多行,在1 oracle过程中使用许多不同的值

时间:2016-07-21 02:32:30

标签: oracle

示例,我需要更新3行。我正在运行UPDATE语句3次更新每一行:

UPDATE table SET col1 = 'a' where col2 = '1';
UPDATE table SET col1 = 'b' where col2 = '2';
UPDATE table SET col1 = 'c' where col2 = '3';

有没有办法让它更快,谢谢

1 个答案:

答案 0 :(得分:1)

三个update是一种非常合理的方法。你也可以这样做:

update table
    set col1 = (case when col2 = 1 then 'a'
                     when col2 = 2 then 'b'
                     when col2 = 3 then 'c'
                     else col1
                end)
    where col2 in (1, 2, 3);