Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment sélectionner les codes non utilisés dans cet exemple

Générez une liste de nombres pour votre plage (ici j'utilise VALUES clause), puis semi-jointure à la liste "utilisé"

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)

Modifier :

Vous pouvez remplacer la clause VALUES par n'importe quel code de génération de table de nombres.Exemples :