Holen Sie sich Root-parent-child-in der Hierarchischen Tabelle

Ich habe eine Tabelle mit hierarchischen Daten in es, die Struktur geht so:

ID      ParentId
----   ----------
1       NULL
2       1
3       2
4       2
5       3
6       5

Wenn ich übergeben Sie die Knoten-Id, die ich möchte zu bekommen, die meisten top-Knoten-Id/details durch das Durchlaufen durch alle seine Eltern in SQL.

Ich habe versucht, CTE, die ich irgendwie nicht bekommen kann die richtige Kombination. Allerdings habe ich diese arbeiten als eine Funktion, aber es ist so langsam, dass ich Stelle diese Frage.

In dem obigen Beispiel, wenn ich den pass 6, ich würde wollen, haben die meisten top-dh 1. Durch das Durchlaufen durch 6 => 5 => 3 => 2 => [1] (Ergebnis)

Dank im Voraus für Eure Hilfe.

  • Was ist CTE bedeutet?
  • CTE ist Common Table Expression.
InformationsquelleAutor Immortal | 2014-07-02
Schreibe einen Kommentar