條件式增 改 刪合併資料:MERGE
會針對指定條件從來源選取資料列,和目標資料做比較,如果條件符合就會用來源資料列的資料更新或刪除目標資料表內之資料列如果條件不符合就會新增到目標資料列
MERGE INTO 目標資料列 [別名]
USING {來源資料表|(子查詢)} ON(條件)
WHEN MATCHED THEN
UPDATE SET 欄位 ={表達式|預設值}
[WHERE 過濾子句][DELETE WHERE 過濾子句]
WHEN NOT MATCHED THEN
INSERT (欄位 [,...])
VALUES ({表達式 | 預設值}[,{表達式 | 預設值}...])
[WHERE 過濾子句]
多表新增資料列 Muti-Table INSERTS
條件式多表新增資料:使用WHEN子句來過濾判斷子查詢的SELECT子句檢索欄位結果集要存入哪個指定的分割資料表內
INSERT [ALL|FIRST]
WHEN 條件1 THEN
INTO TABLE1 VALUES(欄位1,...欄位2,...)
WHEN 條件2 THEN
INTO TABLE2 VALUES(欄位1,...欄位2...)
...
ELSE
INTO TABLE3(欄位1, 欄位2,...)