MERGE
データを更新するクエリがあります。一致しない場合は、ソースにレコードを挿入して、出力を一時テーブルに取得します。
一致したレコードを一時テーブルにも取得することは可能でしょうか? 基本的に、以降の処理でデータの重複を避けるために、一致したレコードのコピーが必要です。
これは私のMERGE
コマンドです:
MERGE Product.ProductHeaderRepository AS t
USING (SELECT GETDATE() as d, c1, c2, c3,
Name FROM Supplier.ProductHeaderImport
WHERE (BatchID = @BatchID) ) AS s
ON dbo.GetProductHeaderId(s.c1,S.c2,S.c3) <0
WHEN NOT MATCHED BY TARGET THEN
INSERT (Name, c1,c2,c3) VALUES (Name, c2,c2,c3)
OUTPUT INSERTED.iD, s.c1, s.c2, s.c3 INTO @TmpTable;