<span style="color: #000000;">[b]执行一条sql语句,相同的vendor_id ,inventory_item_id就更新,不同的插入新增数据[/b]</span>
<span style="color: #008000;">merge into</span> tscs_ems_upload_storage_t a
<span style="color: #008000;">using</span> (select ? as vendor_id,
? as inventory_item_id ,
? as description ,? as unit,
? as quantity,? as check_date,
? as last_updated_by,
? as created_by from dual) b
<span style="color: #008000;">on</span> (a.vendor_id = b.vendor_id and a.inventory_item_id = b.inventory_item_id)
<span style="color: #008000;">when matched then</span>
<span style="color: #008000;">update set</span>
a.description = b.description,
a.unit = b.unit,
a.quantity = b.quantity,
a.check_date = to_date(b.check_date,'yyyy-mm-dd'),
a.last_updated_by = b.last_updated_by,
a.last_update_date = sysdate
<span style="color: #008000;">when not matched then</span>
<span style="color: #008000;"> insert</span> (a.id,a.vendor_id,a.inventory_item_id,a.description,a.unit,a.quantity,
a.check_date,a.created_by,a.last_updated_by)
<span style="color: #008000;">values</span>(tscs_ems_upload_storage_s.nextval,b.vendor_id,
b.inventory_item_id,b.description,b.unit,b.quantity,
to_date(b.check_date,'yyyy-mm-dd'),b.created_by,b.last_updated_by)
<span style="color: #008000;">merge into</span> tscs_ems_upload_storage_t a
<span style="color: #008000;">using</span> (select ? as vendor_id,
? as inventory_item_id ,
? as description ,? as unit,
? as quantity,? as check_date,
? as last_updated_by,
? as created_by from dual) b
<span style="color: #008000;">on</span> (a.vendor_id = b.vendor_id and a.inventory_item_id = b.inventory_item_id)
<span style="color: #008000;">when matched then</span>
<span style="color: #008000;">update set</span>
a.description = b.description,
a.unit = b.unit,
a.quantity = b.quantity,
a.check_date = to_date(b.check_date,'yyyy-mm-dd'),
a.last_updated_by = b.last_updated_by,
a.last_update_date = sysdate
<span style="color: #008000;">when not matched then</span>
<span style="color: #008000;"> insert</span> (a.id,a.vendor_id,a.inventory_item_id,a.description,a.unit,a.quantity,
a.check_date,a.created_by,a.last_updated_by)
<span style="color: #008000;">values</span>(tscs_ems_upload_storage_s.nextval,b.vendor_id,
b.inventory_item_id,b.description,b.unit,b.quantity,
to_date(b.check_date,'yyyy-mm-dd'),b.created_by,b.last_updated_by)