Halihallo Axel
select * from tabelle1, tabelle2 where tabelle1.id = tabelle2.id
Die Syntax ist korrekt und selbst Access kennt diesen simplen JOIN.
Das ist korrekt. Auch ACCESS kann diesen Unsinn.
Unsinn? - Weil ein INNER JOIN eigentlich das Kreuzprodukt erzwingt (obwohl natürlich
vom QueryOptimizer optimiert) und somit aperformant "klingt"?
kann es allerdings auch. Das ist, meiner Meinung nach, SQL. Das da oben ist Stückwerk. Begründung: Die Verbindung von mehreren Tabellen über Schlüsselfelder nennt man in SQL einen JOIN. Man macht so etwas in SQL also mit einem JOIN. Nach WHERE steht eine Begingung, die bestimmte Datensätze herausfiltert. Das kann durchaus _zusätzlich_ zu einem JOIN notwendig sein.
Ja und? - Das ist doch keine Argumentation, die mich in der Meinung wiederlegt, warum
es INNER JOIN nur bei MySQL gibt.
@Jose: IMHO ist INNER JOIN eine Syntax, die es nur in MySQL gibt.
Wie kommst Du zu dieser Meinung?
Tja, jetzt frage ich mich auch :-)
Ich hatte mir folgendes überlegt:
Ein INNER JOIN und die Kommagetrennte Liste der WHERE-Klausel sind semantisch äquivalent.
Beide machen einen Full Table Join und selektieren dann aufgrund Kriterien.
Frag mich nicht warum, aber ich dachte, dass diese INNER JOIN - Syntax nur MySQL
spezifisch sei (eigentlich ist die eine oder andere Syntax ja redundant).
Danke für die Korrektur!
Viele Grüsse
Philipp