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

SELECT qui renvoie la liste des valeurs qui n'apparaissent dans aucune ligne

Si vous ne voulez pas (explicitement) utiliser des tables temporaires, cela fonctionnera :

SELECT id FROM (
  (SELECT 1 AS id) UNION ALL
  (SELECT 2 AS id) UNION ALL
  (SELECT 3 AS id) UNION ALL
  (SELECT 4 AS id) UNION ALL
  (SELECT 5 AS id)
) AS list
LEFT JOIN users USING (id)
WHERE users.id IS NULL

Cependant, c'est assez moche, assez long, et je doute de son fonctionnement si la liste des identifiants est longue.