Sie geben die gleichen Ergebnisse zurück, weil sie semantisch identisch sind. Dies:
select *
from A, B
...ist (zwinkert) ANSI-89-Syntax. Ohne eine WHERE-Klausel zum Verknüpfen der Tabellen ist das Ergebnis ein kartesisches Produkt. Genau das bietet die Alternative auch:
select *
from A
cross join B
...aber CROSS JOIN ist ANSI-92-Syntax.
Über Leistung
Es gibt keinen Leistungsunterschied zwischen ihnen.
Warum ANSI-92 verwenden?
Der Grund für die Verwendung der ANSI-92-Syntax ist die OUTER JOIN-Unterstützung (IE:LEFT, FULL, RIGHT) - die ANSI-89-Syntax hat keine, so dass viele Datenbanken ihre eigene implementiert haben (die nicht auf andere Datenbanken portiert wird). ). IE:Oracles (+)
, =*
von SQL Server