MySQL, Fehler bei INNER JOIN Abrage
Uwe
- php
Hallo, weiß jemand warum ich diese Fehlermeldung erhalte
You have an error in your SQL syntax near 'ON adressen.id_adresse = paises.id_adr' at line 2
wenn ich diese Abfrage starte?
$sqlbefehl = "SELECT adressen.calle, adressen.ort, paises.pais
FROM adressen INNER JOIN paises ON adressen.id_adresse = paises.id_adr";
Es dankt für Hinweise, Uwe
Hallo Uwe,
ich habe 'mal etwas im MySQL-Handbuch geschnuppert, und folgende kleine Zeile gefunden :
'Note that in version before 3.23.16 the INNER JOIN didn't take a join condition!'
Vielleicht ist es das ?
Versuch stattdessen einfach:
select adressen.calle, adressen.ort, paises.pais
from adressen, paises
where adressen.id_adresse = paises.id_adr
Sollte aufs gleiche herauskommen und (hoffentlich!) funktionieren.
Gruß,
kerki
Hallo kerki
'Note that in version before 3.23.16 the INNER JOIN didn't take a join condition!'
Ja, das habe ich auch gefunden und warte noch auf die Antwort meines Providers. Inzwischen werde ich die WHERE - Variante benutzen, die auch mit drei Tabellen klappt. siehe:
$sqlbefehl = "SELECT adressen.calle, adressen.cod_pos, orte.ort, paises.pais FROM paises, adressen, orte WHERE paises.id_pais = adressen.pais AND orte.id_ort = adressen.ort";
Hab Dank, Gruß Uwe
Hallo Uwe !
Aber Vorsicht !!! Hüte dich vor dem kartesischen Produkt !
Lies 'mal: [http://www2.rent-a-database.de/mysql/mysql-127.html]
Da hat man ruckzuck aus 1000 x 1000 x 1000 Datensätzen eine Milliarde gemacht und ist sich keiner Schuld bewußt. :-O
Wahrscheinlich war INNER JOIN gar nicht das gesuchte, sondern RIGHT, LEFT oder sonstwie join, und diese Joins sind auch mit älteren Versionen machbar.
Wie es in deinem Fall heissen müsste habe ich jetzt leider auch nicht auf Knopfdruck parat, sollte dir aber klar sein/werden, weil du ja weisst, was du worin suchst, und somit auch weißt, welche Mengen Teile einer anderen sind.
Gruß,
kerki