Zum Beispiel haben zwei Tabellen viele (oder hat eine) Beziehung. Autor und Bücher. Zum Beispiel wollen wir prüfen, ob dies ein neuer Autor ist, der keine Bücher geschrieben hat.SQLite3 - Warum LEFT JOIN unterscheidet sich von anderen RDBMSes?
SELECT authors.id
FROM authors
LEFT JOIN books ON authors.id = books.author_id AND books.id IS NULL
richtig in jedem RDBMS Dies funktioniert: MySQL, PostgreSQL, SQL Server, Oracle vielleicht, aber nicht in SQLite3. In SQLite3 muss der letzte Teil zu WHERE
bewegt werden:
SELECT authors.id
FROM authors
LEFT JOIN books ON authors.id = books.author_id
WHERE books.id IS NULL
richtig arbeiten. Warum?
Spielzeug-Datenbanken sind so. Sie arbeiten für eine überwältigende Mehrheit von Anwendungsfällen, was sie enorm nützlich macht, aber man muss lernen, mit ihren vielen Mängeln zu leben. – dasblinkenlight