Ich habe bei folgendem Statement keinen Fehler, wenn ich es auf MySQL4 ausführe, bei MySQL5 kommt hingegen ein Fehler.
Ziel dieses queries ist es eine Anzeige aller Nachrichten zu erzeugen. In der Nachrichtentabelle gibt es zwei foreign-keys, 'von' und 'an', mit deren Hilfe der Absender und Empfänger ermittelt werden soll.
Ich weiß nicht, was sich in MySQL5 mit der LEFT JOIN ... ON ... Syntax geändert hat, dass es jetzt nicht mehr funktioniert, deshalb frage ich hier.
Der Fehler bei MySQL 5
An error occurred when executing the SQL command:
Unknown column 'nachrichten.von' in 'on clause' [SQL State=42S22, DB Errorcode=1054]
Die Tabellen sehen vereinfacht so aus:
//edit: ich habe die Sachen, die Zergling angemerkt hat (hoffentlich) behoben
Ziel dieses queries ist es eine Anzeige aller Nachrichten zu erzeugen. In der Nachrichtentabelle gibt es zwei foreign-keys, 'von' und 'an', mit deren Hilfe der Absender und Empfänger ermittelt werden soll.
Ich weiß nicht, was sich in MySQL5 mit der LEFT JOIN ... ON ... Syntax geändert hat, dass es jetzt nicht mehr funktioniert, deshalb frage ich hier.
Code:
SELECT nachrichten.betreff, vonBenutzer.name, anBenutzer.name FROM nachrichten, benutzer AS anBenutzer LEFT JOIN benutzer AS vonBenutzer ON nachrichten.von = vonBenutzer.id WHERE nachricht.an = anBenutzer.id;
An error occurred when executing the SQL command:
Unknown column 'nachrichten.von' in 'on clause' [SQL State=42S22, DB Errorcode=1054]
Die Tabellen sehen vereinfacht so aus:
Code:
benutzer: INT id VARCHAR name nachrichten: INT von INT an VARCHAR betreff
Kommentar