Kann mir jemand sagen wie man alle Siblings eines Knotens in einer Nested Set Struktur auslesen kann?
Ankündigung
Einklappen
Keine Ankündigung bisher.
Nested Sets und Silbings
Einklappen
Neue Werbung 2019
Einklappen
X
-
Stichworte: -
-
Vielleicht bin ich einfach nur unwissend, aber was sind "Silbings"?
Links zu "nested sets":
http://ffm.junetz.de/members/reeg/DS...00000000000000
http://www.klempert.de/php/nested_sets/
-
-
-
-
Der left-Wert des nächsten Sibling ist immer eins größer als der right-Wert des aktuellen Elementes, wenn ich mich jetzt nicht völlig vertue.
Kommentar
-
Ja soweit bin ich auch schon gekommen, allerdings bekomm ich keine Abfrage hin die mir alle Siblings ausgibt.
Kommentar
-
Eine Abfrage, mit der alle Geschwister eines Elements ermittelt werden können, fällt mir so auf die Schnelle nicht ein. Das müsstest du dann wohl so realisieren, dass du für das aktuelle Element das nächste Sibling ermittelst und dann diese Funktion nun für das ermittelte Sibling aufrufst (das Ganze dann dynamisch mittels einer Schleife).
Kommentar
-
Naja das ist nicht wirklich die Lösung die ich suche. Man müßte ja auch auf- und absteigend die Siblings ermitteln. Ein besserer Ansatz wäre dann wohl den Parent zu ermitteln und von dem ausgehen alle Kinder der ersten Ebene.
Da ich diese Funktionalität nur zum bearbeiten des Baums benötige ist der dabei entstehende Overhead zu verschmerzen.
Kommentar
-
Du kannst ja mit einer Abfrage alle Kindknoten ermitteln und das Level dazu:
Wenn du nun die Bedingung Level = 2 einfügst, hast du alle direkten Nachfahren. Fehlt nurnoch den Root-Knoten für die Abfrage zu setzen. Frag mich nicht, wie...Code:SELECT s.Name, count(*) AS Level FROM NestedSet v, NestedSet s WHERE s.l BETWEEN v.l AND v.r GROUP BY s.l
Basti
Kommentar
-
Stimmt, auf die Idee war ich jetzt gar nicht gekommen.Zitat von BastiDu kannst ja mit einer Abfrage alle Kindknoten ermitteln und das Level dazu: [...]
Kommentar

Kommentar