[MS SQL] rekursiver Algorythmus gesucht

olly1882

Mitglied
Hallo zusammen,

ich habe eine Tabelle mit 4 Spalten, benötige davon aber nur die ersten beiden. Spalte A enthält das Parent, Spalte B das Child. Auf Grund der hierarchischen Vorgaben und einem später folgenden JOIN brauche ich ein rekursives Statement, um aus der Parent-Child-Beziehung eine Spalte zu generieren. Ich könnte das über eine verschachtelte Struktur machen, aber bei bis zu 25 Hierarchiestufen wäre das ein Mörderstatement.

Mein Problem ist, ich weiss nicht wie ich ein rekursives SQL-Statement im MS SQL Server erstelle, welches die Hierarchiestufen hinunter läuft und alle Elemente in einer einzigen Spalte anordnet. Ein einfaches auslesen der Childs funktioniert nicht, weil ich anschließend das Ergebnis mit anderen Daten JOINen muss.

Die Daten stehen in der view 'view_PC', die erste Spalte heisst 'parent', die zweite 'child'.
 
So ganz komme ich damit nicht klar. In den Beispielen werden noch Zeilen angefügt, ich bräuchte aber eine "aus 2 mach eine Zeile"-Lösung. Mit SELFJOIN würde das wohl auch irgendwie gehen, jedoch weiss ich nicht ob das nicht den Server zu sehr beansprucht.

Die Grundlagen von SQL versteh ich (SELECT, INSERT, UPDATE, ...), aber bei diesem schwierigen Statement brauch ich Hilfe. Wenn ich etwas sehe kann ich es nachvollziehen und ein wenig anpassen. Aber ich weiss nicht wie ich die Beispiele umsetzen soll. Denn die Hierarchie bleibt in den Beispielen schließlich erhalten.
 
Zuletzt bearbeitet:
Zurück