bei Verwendung von ANSI SQL-92
Syntax, das ON
Das Schlüsselwort ist Teil des Joins, mit Ausnahme des cross join
da Sie keine Bedingung für die Beziehung haben.
Bsp.
INNER JOIN
SELECT *
FROM tableA INNER JOIN tableB
on tableA.ID = tableB.ID
CROSS JOIN
SELECT *
FROM tableA CROSS JOIN tableB
ON
sollte nach der verknüpften Tabelle folgen (Verknüpfungen wie INNER und OUTER ), damit Sie keinen Syntaxfehler haben. aber wenn Sie ANSI SQL-89
verwenden Syntax, ON
Das Schlüsselwort wird weggelassen, aber Sie müssen die Beziehung in der where clause
angeben
Bsp.
INNER JOIN
SELECT *
FROM tableA, tableB
WHERE tableA.ID = tableB.ID
CROSS JOIN
SELECT *
FROM tableA, tableB
Es ist fehleranfällig, denn wenn Sie die Bedingung vergessen, wird es keinen Syntaxfehler generieren und wahrscheinlich den cross join
ausführen