Uwe: MySQL, Fehler bei INNER JOIN Abrage

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

  1. 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

    1. 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

      1. 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