Dies sind beide Joins. Sie sind nur zwei verschiedene syntaktische Darstellungen für Joins. Die erste, (unter dem Stichwort „Join“ ist die aktuelle ANSI-Norm (ab 1992 glaube ich).
Im Falle innerer schließt sich nur, die beiden differeent Darstellungen funktional identisch sind, aber letztere ANSI SQL92 Standardsyntax ist viel Moire-lesbar, sobald Sie sich daran gewöhnt haben, da jede einzelne Join-Bedingung mit dem Paar der dazwischenliegenden Ergebnismengen verknüpft ist. In der älteren Darstellung sind die Join-Bedingungen alle zusammen mit den gesamten Abfragen Filter Bedingungen, in der Where-Klausel, und es ist nicht so klar, was ist.Dies macht das Identifizieren schlechter Join-Bedingungen (wo beispielsweise ein nicht beabsichtigtes kartesisches Produkt erzeugt wird) viel schwieriger.
Aber wichtiger ist vielleicht, dass, wenn ein äußeren Join, in bestimmten Szenarien durchgeführt wird, die ältere Syntax NICHT equivilent wird, und in der Tat wird das FALSCH resultset erzeugen.
Sie sollten für alle Ihre Abfragen in die neuere Syntax wechseln.
ähnlich (falls nicht identisch) diese Frage: http://stackoverflow.com/questions/128965/is-there-something-wrong-with-joins-that-dont-use-the-join-keyword- in-sql-or-mys – ZoFreX
das sind beide Joins ... – Donnie