【发布时间】:2017-01-25 13:52:44
【问题描述】:
我将 SAP BODS 作为面向 Oracle Exadata 运行的 ETL 工具。我想从 BODS 生成一个包含 where 子句的 merge into 语句,限制在找到匹配项时将更新的列。
我今天的合并语句是这样的:
MERGE INTO TargetTable s
USING
(SELECT columns
FROM "sourceTable"
) n
ON ((s.Column= n.Column) WHEN MATCHED THEN
UPDATE SET s."Column" = n.Column
-----MISSING where clause ------
WHEN NOT MATCHED THEN
INSERT /*+ APPEND */ (s.columns)
VALUES (n.Columns);
【问题讨论】:
-
我不清楚您是否需要根据某些条件限制要更新的列或要更新的行。请发布一些示例数据和所需结果以阐明您的需求。
标签: merge oracle11g sap etl sap-data-services