merge用法举例

MERGE INTO OP_ASN_DEPOSIT_UNIT_INPUT_HIS T
USING OP_ASN_DEPOSIT_UNIT_INPUT S
ON (T.ACCT_NO=S.ACCT_NO AND T.ASN_IN_OBJ=S.ASN_IN_OBJ)
-- 当MATCHED的时候更新除了关联的字段的其他字段的信息(T表字段等于S表字段)
WHEN MATCHED THEN UPDATE SET T.AREA_NO=S.AREA_NO,
T.ORG_NO=S.ORG_NO,
T.CUST_NO=S.CUST_NO,
T.CUST_NAME=S.CUST_NAME,
T.START_DATE=S.START_DATE,
T.END_DATE=S.END_DATE,
T.CUR_ASN_RATE=S.CUR_ASN_RATE
-- 当 NOT MATCHED的时候把S表字段值插入T表
WHEN NOT MATCHED THEN INSERT (T.AREA_NO,
T.ACCT_NO,
T.ORG_NO,
T.CUST_NO,
T.CUST_NAME,
T.START_DATE,
T.END_DATE,
T.ASN_IN_OBJ,
T.CUR_ASN_RATE) VALUES(S.AREA_NO,
S.ACCT_NO,
S.ORG_NO,
S.CUST_NO,
S.CUST_NAME,
S.START_DATE,
S.END_DATE,
S.ASN_IN_OBJ,
S.CUR_ASN_RATE)

原文地址:https://www.cnblogs.com/yanch/p/8716313.html