woodfighter: Seiten in der richtigen Hierarchie ausgeben

Beitrag lesen

Tach,

Ich möchte meine ganzen Seiten ausgeben sortiert nach der Id und mit allen Unterseiten.

Ich habe mir gedacht, das ich zuerst die erste Ebene abfrage!

SELECT Id,Titel,ZuId FROM seiten WHERE ZuId=0 ORDER BY Titel

und dann irgendwie die Unterebenen, so das als Ergebniss so eine Ausgabe kommt.

musst du das Problem in der Datenbank lösen? Ich würde das Zuordnen der Ebenen eher erst nach der Abfrage machen, weil mir keine Lösung einfällt, bei der die Menge an Ebenen dynamisch wäre.

Eine Datenbanklösung wäre (sofern man nicht mehr als 10 Elemente pro Ebene hat):

SELECT a.*
 FROM seite AS a
 LEFT JOIN seite AS b
  ON a.zuid=b.id
 LEFT JOIN seite AS c
  ON b.zuid=c.id
 ORDER BY COALESCE(c.id,b.id,a.id,0)*100 + COALESCE(b.id,a.id,0)*10+a.id;

Aber das ist eher keine gute Idee.

mfg
Woodfighter