Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Wie wählen Sie für nicht verwendete Codes in diesem Beispiel aus

Generieren Sie eine Liste mit Zahlen für Ihren Bereich (hier verwende ich VALUES Klausel), dann Semi-Join zur "used"-Liste

SELECT
    *
FROM
   (VALUES (1), (2), (3), (4), (5), (6), (7), (8), (9)) X (Num)
WHERE
   NOT EXISTS (SELECT * FROM MyTable M WHERE M.Code = X.Num)

Bearbeiten:

Sie können die VALUES-Klausel durch einen beliebigen Generierungscode für Zahlentabellen ersetzen. Beispiele: