sql >> Databáze >  >> RDS >> Mysql

SELECT, který vrátí seznam hodnot, které se nevyskytují v žádném řádku

Pokud nechcete (explicitně) používat dočasné tabulky, bude to fungovat:

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

Je však docela ošklivý, docela dlouhý a pochybuji o tom, jak by fungoval, kdyby byl seznam ID dlouhý.



  1. String -> java.util.Date -> java.sql.Date (s časovým razítkem)

  2. Jak povolit pomalé protokoly dotazů v AWS RDS MySQL

  3. Chyba syntaxe kvůli použití vyhrazeného slova jako názvu tabulky nebo sloupce v MySQL

  4. MySQL nadřazené děti výběr jednoho dotazu