Я пытался помочь воспроизвести, но черт побери с заявлением Merge в Snowflake. Я считаю, что ваш синтаксис для слияния не является правильным. Это должно работать в Снежинке.
CREATE TABLE S1
(Cola varchar(10),Colb varchar(10), EMP_ID number);
CREATE TABLE S2
(Colc varchar(10), EMP_ID number);
INSERT INTO S1 values ('Hello', 'Fred', 100),
('Hello', 'Will', 101);
INSERT INTO S2 VALUES ('World', 101),
('Test', 101);
SELECT * FROM S1;
SELECT * FROM S2;
CREATE TABLE T (Cola varchar, Colb varchar, EMP_ID number, Colc varchar);
//ref https://docs.snowflake.net/manuals/sql-reference/sql/merge.html
//SELECT COLA, COLB, S1.EMP_ID, COLC
//FROM S1 LEFT OUTER JOIN S2 ON S1.EMP_ID = S2.EMP_ID;
MERGE INTO T USING ((SELECT COLA, COLB, s1.EMP_ID, COLC
from S1 LEFT OUTER JOIN S2
on S1.EMP_ID = S2.EMP_ID)) a ON (NVL(a.EMP_ID,0) = NVL(T.EMP_ID,0))
ПРИ СООТВЕТСТВИИ С ДАННЫМ, УДАЛИТЬ, НЕ СООТВЕТСТВУЮЩЕМ, ЧЕМ УСТАВИТЬ (cola, colb, emp_id, colc) ЗНАЧЕНИЯ (a.cola, a.colb, a.emp_id, a.colc);