Muss ich wirklich was rekursives bauen oder gibts dafür 'ne prima Logik:
Gibt mir alle Vater-Sohn-Beziehungen aus, die in Ihrem Stammbaum nicht irgendwo inaktiv sind.
Eine Baumstruktur durchforstest Du am besten rekursiv, vor allem, wenn du nicht weißt, wie groß der Baum werden kann.
In SQL macht sich das natürlich schlecht. Du müsstest eine Abfrage schreiben, die sich selbst aufruft und Daten aus dieser Ergebnistabelle weiterverwendet; ein rekusives View praktisch. Ich glaube nicht, dass es das schon in der Praxis gibt.
Welches dbms benutzt Du? Vielleicht lässt es ja rekursive stored procedures zu...
Hi,
nachdem meine Mail mit 1,5 Tagen Verspätung hier im Formum aufschlug, bin ich natürlich schon etwas weiter.
@Markus:
Ich hab da ne Idee, weiß aber nicht, ob das wirklich funktioniert.
- SELECT * FROM table WHERE aktiv=1
- Inner Join des Ergebnisses mit table wobei result.vater =
table.sohn
Genau so bekomme ich das Gewünschte ... das war aber nur ein Schritt.
@Jan:
Eine Baumstruktur durchforstest Du am besten rekursiv, vor allem, wenn du nicht weißt, wie groß der Baum werden kann.
Habe das dann so in der Art auch realisiert, zumindest versucht. Das scheint wohl der einzige Weg. Er rattert rekursiv durch die Gegend, auch noch in vertretbarer Zeit. Das Ganze lä#uft ja auch nicht ständig, vielleicht 2 mal am Tag/Nacht.
Welches dbms benutzt Du? Vielleicht lässt es ja rekursive stored procedures zu...
mysql....hilft da nicht viel weiter
Letztenendlich will ich die Baumstruktur als XML exportieren (die Ids der Knoten werden dann noch zu Klartextnamen expandiert) um das Ganze woanders einlesen zu lassen. Ungefähr so:
<Wurzel id=0> <Autos id=1> <grüne_Autos id=23 /> <blaue_Autos id=45/> </Autos> <Schiffe id=2> < über_Wasser id=999> < schnelle id=17 /> < langsame id=42/> < kaputte id=43/> </ über_Wasser> < unter_Wasser id=1002> < U-Boote id=45/> < abgesoffene id=56/> </ unter_Wasser> </Schiffe> .... </Wurzel> Mittlerweile bin ich mir über die Struktur des Zwischenobjektes noch nicht im Klaren (in Perl) in dem erst mal das Ganze stehen soll, bis dann ein XML draus wird. Ich brauch noch bissel Theorie und eine Handvoll Array und Hashes mit Referenzen und paar Schleifen drumherum.
Mit freundlichen Grüßen
Jens Puruckherr
lug-dd@mailman.schlittermann.de