Crea una tabla temporal con tus claves:
CREATE TEMPORARY TABLE mykeys (`key` INT);
INSERT INTO mykeys VALUES (1),(2),(3),(4),(5);
Entonces use NO EN:
SELECT `key`
FROM mykeys
WHERE `key` NOT IN (SELECT `key` FROM mytable)
Finalmente, elimine su tabla TEMP si debe:
DROP TABLE mykeys
EDITAR :Se agregó SQLFiddle .
Si está utilizando PostgreSQL que admite EXCEPT
operador
, y también VALUES
se puede usar para crear un conjunto de filas a partir de una lista de valores, hay otra forma más fácil de hacerlo sin tablas temporales (SQLFiddle
):
VALUES (1),(2),(3),(4),(5)
EXCEPT
SELECT key FROM mytable