Oracle同时更新两记录

t_check表结构,该表主键为(w_id+rw_num)

Oracle同时更新两记录_第1张图片

要变更的记录:


业务目标为同时修改这两条记录的opinion字段:当用operator为sup时将opinion改为'超级管理员',当operator为其他值是将opinion修改为'普通管理员'。

最终处理方法使用了case-when,SQL如下:

update t_check_test set check_time='094012',opinion=case operator when 'sup' then replace(opinion,opinion,'超级管理员')
                                                                  when '067337' then replace(opinion,opinion,'普通管理员')
                                                                    end
where  rw_id='AQBW000292' and rw_num ='0000' and operator in ('067337','sup')


你可能感兴趣的:(oracle)