Jika Anda tidak ingin (secara eksplisit) menggunakan tabel sementara, ini akan berhasil:
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
Namun, ini cukup jelek, cukup panjang, dan saya ragu bagaimana kinerjanya jika daftar ID panjang.