簡単な MERGE ステートメントが与えられます。レコードをターゲット テーブルに挿入/更新する場所。質問: 挿入の場合は 0、更新の場合は 1 のフラグを付けて、これらの値を別のテーブルに挿入することもできますか? 例えば。一致しない場合はターゲットと別のテーブルに挿入し、一致した場合はターゲットを更新して別のテーブルに挿入します。
MERGE dbo.FactBuyingHabits AS Target
USING (SELECT CustomerID, ProductID, PurchaseDate FROM dbo.Purchases) AS Source
ON (Target.ProductID = Source.ProductID AND Target.CustomerID = Source.CustomerID)
WHEN MATCHED THEN
UPDATE SET Target.LastPurchaseDate = Source.PurchaseDate
--and insert into test_tbl values (1, Source.ProductID, Source.CustomerID) --?
WHEN NOT MATCHED BY TARGET THEN
INSERT (CustomerID, ProductID, LastPurchaseDate)
VALUES (Source.CustomerID, Source.ProductID, Source.PurchaseDate)
--and insert into test_tbl values (0, Source.ProductID, Source.CustomerID) --?