Mailinglisten-Archive |
Hallo Ralf, > Ich muss in meiner Anwendung aber auch alle Unterknoten eines Knotens > selektieren können. Also nicht nur die direkt eine Ebene darunter, > sondern auch weiter unten. Das funktioniert mit der Selektion anhand der > LEFT/RIGHT ziemlich gut und auch recht schnell. okay, dann ist der klassische Ansatz wirklich nicht sehr gut - ich wusste nicht, dass das eine explizite Forderung ist. > Die Frage ist, wie ich bei deinem Aufbau solch eine Abfrage gestalten > kann. Ich stelle es mir sehr schwer vor, da die Abfrage ja eigentlich > rekursiv sein müsste. Beim Binärbaum/Nested Set hingegen geht das mit > einem einfachen Select. Um beim klassischen Modell alle Unterknoten zu selektieren muss man in der Tat rekursiv zu Werke gehen - z.B. mit StoredProcedures o.ä. > Ähnlich ist es, wenn ich von meiner aktuellen Position im Baum alle > übergeordneten Knoten in einem Rutsch selektieren möchte (für eine > Brotkrumen Navi). Das geht prima mit Binärbaum/Nested Set, aber auch mit > deinem Ansatz? > > Hast du solche Abfragen schon damit gelöst? Die IDs der Brotkrumen sind über die ParentIDs miteinander verstrickt, allerdings muss auch dort ein rekursives Select in irgendeiner Form verwendet werden. Wie Lutz schon sagte, hast du mit den NestedSets sicherlich den richtigen Grundansatz schon in der Hand :-) Grüße, Niels
php::bar PHP Wiki - Listenarchive