Jak mogę wygenerować ścieżkę hierarchii w SQL, która prowadzi do danego węzła?

W mojej bazie danych MS SQL 2008 R2 mam tę tabelę:

TABLE [Hierarchy]
[ParentCategoryId] [uniqueidentifier] NULL,
[ChildCategoryId] [uniqueidentifier] NOT NULL

Muszę napisać zapytanie, które wygeneruje wszystkie ścieżki prowadzące do danego węzła.

Powiedzmy, że mam następujące drzewo:

A
-B
--C
-D
--C

Które będą przechowywane jako:

NULL | A
A    | B
A    | D
B    | C
D    | C

Pytając o ścieżki do C, chciałbym odzyskać dwie ścieżki (napisane mniej więcej tak):

A > B > C,
A > D > C

questionAnswers(3)

yourAnswerToTheQuestion