Hi!
Ich hätte nämlich auch gleich noch ein Problem mit einer GROUP BY Anweisung dabei :)
Dabei erhalte ich aber immer nur den jeweils ersten Wert der zutrifft.
Wieso ist das so?
Eine Gruppierung nimmt man, wenn man Aggregatfunktionen darauf anwenden möchte. Üblicherweise lassen DBMSe in der SELECT-Klausel nur die Felder zu, über die gruppiert wurde und die Aggregatfunktionen. MySQL sieht das anders. Aber du missverstehst das Gruppieren, so wie es aussieht. Du willst stattdessen einen Gruppenwechsel und den bekommt man durch eine ungruppierte aber sortierte Abfrage und wertet beim Ergebnismengenauslesen jeweils den vorhergehenden Wert der "Gruppierspalte" aus und macht bei Unterschieden, das was man tun möchten (neue Zwischenüberschrift oder ähnliches).
Und dann gibt es auch noch GROUP_CONCAT(), wenn dir pro Gruppe eine Liste der Werte mit Trennzeichen aneinandergereiht reicht.
Und wie krieg ich alle Datensätze aus TabelleC die in TabelleB mit Tabelle A verknüpft sind?
Frag C gejoint mit B. A brauchst du nur, wenn du daraus Daten benötigst. Ansonsten ist ein vorhandener Datensatz in B schon eine Aussage, dass eine Beziehung zu A besteht.
Lo!