Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Can I insert into multiple tables in MERGE?

921556Jun 5 2012 — edited Jun 5 2012
All,

I am wondering if I can insert into two table in a single merge statement.

merge into bnsf_po_employee bnsf
using (select p_first_name as first_name,
p_last_name as last_name,
p_emp_id as emp_id,
p_po_number as po_number,
p_event_id as event_id
from dual) b
on (bnsf.po_number = b.po_number)
when matched then
update
set emp_name = b.first_name || ' ' || b.last_name,
emp_id = b.emp_id,
last_user = user,
last_change = sysdate
when not matched then
insert all
into bnsf_po_employee
(po_number, emp_name, emp_id, last_user, last_change, event_id)
values
(b.po_number,
b.first_name || ' ' || b.last_name,
b.emp_id,
user,
sysdate,
b.event_id)
into event_notes
(event_id, notes)
values
(p_event_id,
'PO ' || p_po_number || ' has a driver validation');
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jul 3 2012
Added on Jun 5 2012
1 comment
3,289 views