• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

MySQL Baumstruktur

bermany

New member
Hallo Freunde,
ich habe eine Tabelle mit u.a. folgenden Spalten:
id - INT (Primary-ID)
parent - INT (Zeiger auf übergeordnetes Element)
data - VARCHAR (Anzuzeigender Inhalt)

Ziel ist, eine Baumstruktur zu erstellen (kleine Datenmengen).
Nun soll ermittelt werden, welche Daten die parent "0" besitzen und wie viele untergeordnete Daten es jeweils gibt.
Mein Ansatz:

Code:
SELECT t1.data,count(t2.id) FROM
  mytable AS t1,
  mytable AS t2
WHERE
  t1.parent="0" AND
  t2.parent=t1.id
GROUP BY t1.parent
Das Ergebnis liefert offenbar brauchbare Werte, jedoch nur dann, wenn auch untergeordnete Elemente existieren!
Existieren keine, so wird nicht etwa "0" als count ausgegeben, sondern der jeweilige Eintrag ist nicht Bestandteil des Ergebnisses.
Warum das so ist, ist natürlich klar, immerhin wird mit AND gearbeitet, die Änderung auf OR hatte keinen Erfolg.
Ich glaibe, ich bin dem Ziel nahe, aber weiß einfach nicht weiter.
Kann mir jemand helfen?
Danke.
 
Zuletzt bearbeitet:
jo, ich weiß! Ist beim vereinfachen des Scripts passiert, um Euch das Problem etwas überschaubarer zu machen.
Darum geht es aber nicht. Mir geht es nur um die eigentliche Abfrage, die auch diejenigen Daten ermitteln soll, die noch keine untergeordneten Elemente enthalten.
Der von Dir angegebene Link ist - soweit ich das verstehe - wohl eher eine allgemeine Diskussion über die Art der Verkettung der Elemente. Das ist mir soweit klar und die Zuordnung der Elemente (Datensätze) ist auch keineswegs das Problem, lediglich das Ermitteln der Anzahl untergeordneter Elemente (übrigens: lediglich 1. Ordnung).
 
Zuletzt bearbeitet:
Zurück
Oben