Grunden til, at det ikke virker, er, at du faktisk kører to sætninger sekventielt. Tænk på din kode mere som:
DECLARE @ClientID varchar = 'ClientA'
DELETE FROM Global.dto.ClientUsers;
SELECT ClientID, UserID FROM Global.dto.ClientUsers WHERE [email protected]
EXCEPT
SELECT [email protected], UserID FROM ClientA_DB.dbo.Users;
Hvis du ønsker at ændre Delete
sætning, skal du følge den med en Where
, Join
osv.
For nogle alternative metoder til at få det ønskede resultat, se de fremragende svar på:Brug af T-SQL UNDTAGET med DELETE / Optimering af en forespørgsel