MERGE
ステートメントを使用して SCD-2 テーブルを更新したい。ので、私は持っています:
MERGE TARGET as t
USING SOURCE as s
ON s.KEY = t.KEY
ケース 1:
WHEN MATCHED and s.CHECKSUM <> t.CHECKSUM
この場合、TARGETの最初の UPDATE
行とSOURCE から TARGET への 2 番目の行set row_actual_to = getdate()
が 必要です INSERT
ケース 2:
WHEN NOT MATCHED
ちょうどINSERT
新しい行
1つのステートメントでそれを行う方法は?
Case 1UPDATE
のとの両方をリストするとINSERT
、エラーが発生します。MERGE ステートメントは、セミコロン (;) で終了する必要があります。