Mal eine Frage an die echten mySQL-Cracks hier.
In einer Tabelle, die eine Baumstruktur abbildet, abgekürzt so:
id / parent / name
Muß ich beim Laden des aktuellen Objekts (z.B. id = 100) immer den Stammbaum mitladen, um aus diesem Informationen zu ziehen, die nicht im aktuellen Objekt gesetzt sind (z.B. Rechte-Bits) und implizit vom nächsten Ahnen oder Urahnen geerbt werden.
Dieses Laden findet im Moment in PHP statt (also lade aktuelles Element, finde Parent raus, lade diesen, finde dessen Parent raus usw, bis das Element mit der ID "ROOT" erreicht wurde).
Aus Performancegründen (und Neugier) meine Frage: Läßt sich dieser Vorgang irgendwie in ein mySQL-Statement packen? Und der Stammbaum dann aus dem Resultset auslesen? Auch nach längerem Überlegen wüßte ich nicht, wie.
In einer Tabelle, die eine Baumstruktur abbildet, abgekürzt so:
id / parent / name
Muß ich beim Laden des aktuellen Objekts (z.B. id = 100) immer den Stammbaum mitladen, um aus diesem Informationen zu ziehen, die nicht im aktuellen Objekt gesetzt sind (z.B. Rechte-Bits) und implizit vom nächsten Ahnen oder Urahnen geerbt werden.
Dieses Laden findet im Moment in PHP statt (also lade aktuelles Element, finde Parent raus, lade diesen, finde dessen Parent raus usw, bis das Element mit der ID "ROOT" erreicht wurde).
Aus Performancegründen (und Neugier) meine Frage: Läßt sich dieser Vorgang irgendwie in ein mySQL-Statement packen? Und der Stammbaum dann aus dem Resultset auslesen? Auch nach längerem Überlegen wüßte ich nicht, wie.
Kommentar