Stephan Schmid: Mehrere Tabellen abfragen mit PHP3 und MySQL

Beitrag lesen

Hallo Thorsten,

Ich habe meine SQL-Erfahrungen nicht mit MySQL gemacht und weiß daher nicht wie es reagiert (jede SQL-Engine reagiert ein bischen anders).

Mir scheint die Abfrage zwar syntaktisch richtig aber logisch nicht ganz vollständig.

SELECT tabelle_1.*, tabelle_2.*, tabelle_3.* FROM tabelle_1, tabelle_2, tabelle_3 WHERE bedingung

Aus dem Beispiel wird nicht klar was du mit der Abfrage erreichen willst aber ich nehme einfach mal die Daten in den drei Tabellen stehen in einer Beziehung zu einander.

Diese Beziehungen werden durch den JOIN-Befehl definiert. Das könnte dann so aussehen:

SELECT [Kunde].*, [Bestellung].*
FROM [Kunde] INNER JOIN [Bestellung] ON [Kunde].KundeID = [Bestellung].KundeRel WHERE...;

So wird jedem Datensatz aus Kunde der/die passende/n Datensatz/e aus Bestellung zugeordnet. Mit drei Tabellen ist es etwas aufwändiger geht aber analog.

Ohne JOIN wird jeder Datensatz mit jeden anderen kombiniert (sinnlos aber so reagiert z.B. Access) oder...

nur die Felder aus der letzten Tabelle

...angezeigt (so reagiert scheinbar MySQL).

Ich hoffe es hilft
Stephan