Hallo Leeloo5E,
SELECT pg.uid AS guid, pg.parent_id AS gparent_id, pg.sort_id, pg.creation_date, ne.uid, ne.parent_id, n.content AS name
FROM product_grp AS pg, product_grp_name AS pgn, name AS n
LEFT JOIN be_nav_element AS ne ON (ne.foreign_id = pg.uid AND ne.type_id = '5')
WHERE pgn.grp_id = pg.uid
AND n.uid = pgn.name_id
AND n.lang_id = '1'
>
> Hm ... du sagst pg.uid AS guid und versuchst dann doch die Original-Bezeichnung mit ne.foreign\_id zu vergleichen. Letzteres kommt in deinem SELECT sonst überhaupt nicht vor. Merkwürdig.
Nein, nicht merkwürdig - sondern richtig.
Spaltenaliasnamen dürfen bei MySQL zwar in der WHERE-Klausel vorkommen,
jedoch nicht in der JOIN-Klausel, wie ich [erst vor kurzem](https://forum.selfhtml.org/?t=152455&m=991602) anmerkte.
Völlig überflüssig ist jedoch, dass Spalten, die in der Join-Klausel verwendet
werden, auch in der Spaltenliste erscheinen müssen.
Wie der King bereits zu Recht anmerkte, ist die Mischung zwischen expliziter
und impliziter JOIN-Syntax schon recht merkwürdig.
Freundliche Grüße
Vinzenz