■ MERGE문 에러 -- 1. 임시테이블1 CREATE TABLE IMSI_TEST1 AS SELECT '1' AS COL1, '2' AS COL2, CAST('' AS VARCHAR2(1)) AS COL3 FROM DUAL ; -- 2. 임시테이블2 CREATE TABLE IMSI_TEST2 AS SELECT '1' AS COL1, 'X' AS COL3 FROM DUAL ; -- 3. MERGE문 UPDATE 에러 MERGE INTO ( SELECT * FROM IMSI_TEST1 WHERE COL3 IS NULL ) A USING ( SELECT * FROM IMSI_TEST2 WHERE COL3 IS NOT NULL ) B ON ( A.COL1 = B.COL1 ) WHEN MATCHED THEN UPDATE SET A.COL3 = B.COL3 ; -- [Error] Execution (22: 6): ORA-00903: 테이블명이 부적합합니다 -- 4. MERGE문 UPDATE 성공 MERGE INTO IMSI_TEST1 A USING ( SELECT * FROM IMSI_TEST2 WHERE COL3 IS NOT NULL ) B ON ( A.COL1 = B.COL1 ) WHEN MATCHED THEN UPDATE SET A.COL3 = B.COL3 ; -- UPDATE 성공
/*
TOAD 사용중인데 해당 예제의 MERGE문 실행하면 에러가 발생합니다.
문법은 맞는거 같은데 어디가 잘못된건지 조언 부탁드립니다.
*/