verschachtelte Abfrage

29/05/2010 - 15:18 von Maxi | Report spam
Hallo zusammen,

leider bin ich noch nicht so weit das ich (für meine Begriffe) ein
verschachtelte Abfrage erstellen kann. Ich muss eine Tabelle mehrfach
abfragen um mir quasi ein Menü-Baum zusammen zu basteln.

In der Tabelle gibt es eine Spalte für ID und Quelle. In der Spalte
Quelle ist die ID des damit zusammen hàngenden Eintrages hinterlegt.
Ich muss nun quasi den letzten Eintrag suchen, bekomme dadurch die
Quelle und muss dann rekursiv damit wieder die nàchste ID suchen, das
Ergebnis dieser Abfrage ist wieder die Quelle und so weiter.

Diese Verschachtelung kann mehrere Ebenen betreffen, und für bis zum
letzten Eintrag dessen Quelle ein NULL beinhaltet.

Ist etwas schwierig zu beschreiben.

Wie könnte ich das lösen? Der erste Eintrag würde ich dann per SET in
eine Variable ablegen und dann die Abfrage starten wollen.

Kann man innerhalb dieser Abfrage sogar die ID's in einem String
ablegen so quasi wie "inhalt=ID & inhalt", damit bekomme ich quasi ein
String mit allen ID's in der richtigen Reihenfolge :-)

Wàre Euch für Tipps sehr dankbar.


Viele Grüsse,
Maxi
 

Lesen sie die antworten

#1 Elmar Boye
29/05/2010 - 17:05 | Warnen spam
Hallo Maxi,

Maxi schrieb:
leider bin ich noch nicht so weit das ich (für meine Begriffe) ein
verschachtelte Abfrage erstellen kann. Ich muss eine Tabelle mehrfach
abfragen um mir quasi ein Menü-Baum zusammen zu basteln.

In der Tabelle gibt es eine Spalte für ID und Quelle. In der Spalte
Quelle ist die ID des damit zusammen hàngenden Eintrages hinterlegt.
Ich muss nun quasi den letzten Eintrag suchen, bekomme dadurch die
Quelle und muss dann rekursiv damit wieder die nàchste ID suchen, das
Ergebnis dieser Abfrage ist wieder die Quelle und so weiter.

Diese Verschachtelung kann mehrere Ebenen betreffen, und für bis zum
letzten Eintrag dessen Quelle ein NULL beinhaltet.

Ist etwas schwierig zu beschreiben.



Die CREATE TABLE Anweisung und ein paar Beispieldaten wàren
an der Stelle hilfreich.

Grundsàtzlich sieht das aber nach etwas aus, was man gut
mit einer rekursiven CTE lösen kann:
http://msdn.microsoft.com/de-de/lib...86243.aspx
"Rekursive Abfragen mithilfe von allgemeinen Tabellenausdrücken"

Gruß Elmar

Ähnliche fragen