Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Merge/update optimization
=20
I'm writing a batch update/insert procedure and am wondering if there is a way to only update columns corresponding to the 'on' clause if they are different from the current value?...instead of update all columns regardles of whether or not that are the same.
So...
Table stage
Pk_id
Col_a Col_b Col_c
Table prod
Pk_id
Col_a Col_b Col_c
Merge into a.prod using select * from b.stage on (a.pk_id=3Db.pk_id) =
When
matched then set a.col_a=3Db.col_a (but only if col_a has a different
value) When not matched then insert...;
Thanks
chris
-- http://www.freelists.org/webpage/oracle-lReceived on Thu Oct 28 2004 - 13:38:37 CDT
![]() |
![]() |