2017-01-25 12 views
0

Oracle Exadataを実行するETLツールとしてSAP BODSを使用しています。 BODSのstatementにwhere節を含む文をマージして、マッチが見つかったときに更新される列を制限したいと思います。私が今日持っている MERGE文は次のようになります。その可能性はないアップデート設定セクションbods ETL oracle merge where句

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); 
+0

いくつかの条件や更新する行に基づいて更新する列を制限する必要があるかどうかはわかりません。あなたの必要性を明確にするために、いくつかのサンプルデータと必要な結果を投稿してください。 – Aleksej

答えて

0

正しい負荷オートDSの対象の使用後にwhere句を持つことを信じて傾けます。そこにあなた

あなたは上記のクエリが生成されます「はい」

にセットをマージできるようであれば一緒にプレイするには、いくつかのオプションがあります。しかし、これが起こるためには、適切なキーを設定する必要がありますので注意してください。

Cheerz。 Shaz