Mailinglisten-Archive |
Hallo, ich habe da ein laengeres Problem mit dem "JOIN" bei der MySQL-Abfrage. Zuerst konnte ich es umgehen. Doch nun komme ich nicht drum herum: Weiss jemand, ob MySQL verschachtelte Joins erlaubt? wie z.B. select * from ( ... left join ... on ...=... ) left join ( ... left join .. on ...=...) on ...=... MySQL meldet immer einen Syntaxfehler ab der zweiten Klammer: You have an error in your SQL syntax near '(... left join ... on ... = ... ) on ..' at line 1 Ich habe z.B. herausgefunden, das folgender Join erlaubt ist: select * from ( ... left join ... on ...=... ) left join ... on ..=... Wieso auch immer? Vielleicht habe ich auch einen Syntaxfehler. Daher hier mein Besipiel (etw. komplex, sorry): select * from (ST_HPTNAV left join ST_NAV on ST_HPTNAV.ST_HPTNAV_ID = ST_NAV.ST_HPTNAV_ID) left join (ST_C left join ST_NAVLINK on ST_C.ST_C_ID = ST_NAVLINK.ST_C_ID) on ST_NAV.ST_NAV_ID = ST_NAVLINK.ST_NAV_ID Alle eingeklammerten Joins als Einzelabfragen funktionieren und liefern die gemeinsammen Werte, die fuer die oben aufgeführte Abfrage (im Join) notwendig sind. Die Fehlermeldung: MySQL meldet: You have an error in your SQL syntax near '(ST_C left join ST_NAVLINK on ST_C.ST_C_ID = ST_NAVLINK.ST_C_ID) on ST_NAV.ST_NA' at line 1 Ich hoffe, dass mir hier jemand weiterhelfen kann. Vielen Dank Heinrich
php::bar PHP Wiki - Listenarchive