Pamiętaj, że nie było to odpowiedzią na pytanie OP, było to tylko rozwinięcie klauzuli MERGE.
Zgodnie z MSDN
, "Jeśli są dwa WHEN MATCHED
klauzul, należy podać UPDATE
akcja i należy podać DELETE
działanie".
WHEN MATCHED THEN <merge_matched>
Określa, że wszystkie wiersze tabeli target_table, które pasują do wierszy zwróconych przez <merge_search_condition>
i spełniają wszelkie dodatkowe warunki wyszukiwania, są aktualizowane lub usuwane zgodnie z klauzulą MERGE
instrukcja może mieć co najwyżej dwa WHEN MATCHED
klauzule.
Jeśli określono dwie klauzule, pierwszej klauzuli musi towarzyszyć AND <search_condition>
klauzula. Dla dowolnego wiersza drugi WHEN MATCHED
klauzula jest stosowana tylko wtedy, gdy pierwsza nie jest. Jeśli są dwa WHEN MATCHED
klauzul, należy podać UPDATE
akcja i należy określić akcję DELETE.
Źródło:MSDN
Mam nadzieję, że to pomoże.