Tom123: [MySQL]: Nested-Set - Select-Abfrage-Problem

Beitrag lesen

Am einfachsten gibst du jeder Zeile in der Tabelle eine laufende Nummer (zur Ordnung=rang) und eine Nummer für die Einrückung (=indent). Dazu noch eine ID für jede Zeile und jede eingerückte Zeile enthält in einem weiteren Feld die ID der übergeordneten Zeile (pID), Bsp:

ID  rang  pID  indent titel
1   1     0    0      Home
2   2     1    1      Unterpunkt von Home
4   3     1    1      Weiterer Unterpunkt von Home
10  4     0    0      Produkte
....

Jetzt einfach einen SELECT mit ORDER BY rand ASC. Den Wert von indent musst in PHP noch in eine passende List oder ähnliches umwandeln. Möchtest du z.B. alle Unterpunkt von Home ginge das z.B. so: SELECT titel FROM tab WHERE pID=1 ORDER BY rang ASC.

Ich hoffe das hilft dir.