1. 程式人生 > >Oracle同時更新兩記錄

Oracle同時更新兩記錄

t_check表結構,該表主鍵為(w_id+rw_num)


要變更的記錄:


業務目標為同時修改這兩條記錄的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')