Eventueel zou je de DELETE
. kunnen doen uit uw staging-tabel gecombineerd met de OUTPUT
clausule. en INSERT
het resultaat van de OUTPUT
clausule in uw hoofdtabel om dit allemaal in één atomaire verklaring te doen.
OUTPUT deleted.* into dashboardtasks
Er zijn enkele beperkingen vermeld in BOL hoewel dat deze benadering onhaalbaar kan maken.
De output_table kan niet:
- Heb geactiveerde triggers erop gedefinieerd.
- Neem deel aan beide kanten van een buitenlandse sleutelbeperking.
- Heeft CHECK-beperkingen of ingeschakelde regels.
Volledige syntaxis voor uw vraag...
DELETE FROM staggingtasks
OUTPUT DELETED.[tour],
DELETED.tourname,
DELETED.[taskname],
DELETED.[deptdate],
DELETED.[tasktype],
DELETED.[desc],
DELETED.[duedate],
DELETED.[compdate],
DELETED.[comments],
DELETED.[agent],
DELETED.[compby],
DELETED.[graceperiod],
DELETED.completed,
DELETED.canceled
INTO dashboardtasks
WHERE NOT EXISTS(SELECT *
FROM dashboardtasks
WHERE ( staggingtasks.tour = dashboardtasks.tour
and staggingtasks.taskname = dashboardtasks.taskname
and staggingtasks.deptdate = dashboardtasks.deptdate
and staggingtasks.duedate = dashboardtasks.duedate
and staggingtasks.tourname = dashboardtasks.tourname
))