Teradata 合并 column/parameter table.A.A 不存在

Teradata merge column/parameter table.A.A does not exist

我正在尝试将临时 table 合并到我的主 table 中以避免重复:

MERGE INTO MYTABLE A USING
    (
        SELECT Y, Z, X 
        FROM MYTABLE_TEMP T
        JOIN (SELECT X FROM TABLE_X 
        WHERE COLUMN_N = '81205' GROUP BY 1) S  ON S.X = T.X
    ) B
    ON (A.Y = B.Y) AND (A.X = B.X)
WHEN MATCHED THEN UPDATE SET A.LOAD_DS = B.LOAD_DS
WHEN NOT MATCHED THEN INSERT VALUES (B.Y, B.Z, B.X, B.LOAD_DS );

我收到错误消息:合并失败。 3810: Column/Parameter 'MYTABLE.A.A' 不存在。

您不能在 SET 子句中限定目标列名称,UPDATE 语句也存在相同的规则。

MERGE INTO MYTABLE A USING
    (
        SELECT Y, Z, X 
        FROM MYTABLE_TEMP T
        JOIN (SELECT X FROM TABLE_X 
        WHERE COLUMN_N = '81205' GROUP BY 1) S  ON S.X = T.X
    ) B
    ON (A.Y = B.Y) AND (A.X = B.X)
WHEN MATCHED THEN UPDATE SET /*remove the A.*/ LOAD_DS = B.LOAD_DS
WHEN NOT MATCHED THEN INSERT VALUES (B.Y, B.Z, B.X, B.LOAD_DS );