1. 程式人生 > >ORACLE 中merge....into的用法簡單瞭解一下

ORACLE 中merge....into的用法簡單瞭解一下

MERGE INTO [target-table] A USING [source-table sql] B ON([conditional expression] and […]…) WHEN MATCHED THEN [UPDATE sql] WHEN NOT MATCHED THEN [INSERT sql]

【個人理解】:判斷A 表和B 表是否滿足 on中的條件 1、若滿足,則用B表區更新A表 2、若不滿足,則將B表中的資料插入到A表中

例子:

MERGE INTO A_MERGE A USING (select B.AID,B.NAME,B.YEAR from B_MERGE B) C ON (A.id=C.AID)
WHEN MATCHED THEN
  UPDATE SET A.YEAR=C.YEAR 
WHEN NOT MATCHED THEN
  INSERT(A.ID,A.NAME,A.YEAR) VALUES(C.AID,C.NAME,C.YEAR);
commit;