eg:
<select id="importDataToMarquee">
MERGE INTO WARN_MARQUEE B USING (
SELECT
#{id} AS C_INF_ID,
A.C_CRD_ACCPT_ID AS C_CRD_ACCPT_ID,
A.C_ACCPT_NAME_LOC AS C_ACCPT_NAME_LOC,
COUNT(A .C_CARD_NBR) AS C_CARD_COUNT,
#{status} AS C_INF_STS,
SYSDATE AS D_EFT_TM,
TO_DATE(#{invalidTime}, 'SYYYY-MM-DD HH24:MI:SS') AS D_NVLD_TM,
SYSDATE AS D_CRT_TM,
#{userName} AS C_CRT_PSN,
SYSDATE AS D_MDF_TM,
#{userName} AS C_MDF_PSN
FROM
STG_ONL_FIN A
INNER JOIN WARN_FRD_MARK D ON D.C_TRX_ID = A .C_TXN_ID
WHERE
D.C_FRD_IND = '1'
AND CEIL (SYSDATE - D.D_MRK_TM) < 7
GROUP BY
C_CRD_ACCPT_ID,
A .C_ACCPT_NAME_LOC
HAVING
COUNT(C_CARD_NBR) >= 3
)
C ON (B.C_CRD_ACCPT_ID = C.C_CRD_ACCPT_ID)
WHEN MATCHED THEN
UPDATE SET
B.C_INF_STS = '1',
B.D_EFT_TM = SYSDATE,
B.D_NVLD_TM = TO_DATE(#{invalidTime}, 'SYYYY-MM-DD HH24:MI:SS'),
B.D_MDF_TM = SYSDATE,
B.C_CARD_COUNT=C.C_CARD_COUNT
WHEN NOT MATCHED THEN
INSERT VALUES (C.C_INF_ID,
C.C_INF_STS,
C.D_EFT_TM,
C.D_NVLD_TM,
C.D_CRT_TM,
C.C_CRT_PSN,
C.D_MDF_TM,
C.C_MDF_PSN,
C.C_CRD_ACCPT_ID,
C.C_ACCPT_NAME_LOC,
C.C_CARD_COUNT
)
</select>