listnelemente, die nicht in wo Klausel und nicht in Tabelle

Ich habe eine list von Benutzernamen, die erstellt werden müssen. Ich kann den Tisch abfragen, um herauszufinden, was vorhanden ist, aber wie kann ich abfragen, welche Artikel aus meiner list nicht existieren?

dh

select username from aspnet_Users where UserName in (a,b,c,d, etc) 

aber wenn nur a und d existieren, was SQL kann ich verwenden, um b und c ?

Du könntest so etwas ausprobieren:

 -- Included a CTE here just so this example is runnable; -- You don't need it in your query WITH aspnet_Users (UserName) AS ( SELECT 'a' UNION SELECT 'd' ) SELECT n.UserName FROM aspnet_Users e RIGHT JOIN (VALUES ('b'), ('c')) AS n(UserName) ON e.UserName = n.UserName 

Im Grunde nehmen Sie Ihre vorhandene Tabelle zu den Benutzernamen, die Sie überprüfen, und nur die Ergebnisse zurückgeben, wo es keine Übereinstimmung gab.

Ergebnisse:

 UserName -------- b c (2 row(s) affected)