В одной из наших баз данных мы используем столбец HierarchyId. Затем мы выбираем строки из таблицы, как это:Сортировать по HierarchyId, но сначала с родительским
SELECT HierarchyId.ToString()
FROM Tree
ORDER BY HierarchyId DESC
Это кладет ее в хорошей иерархической структуре, но со всеми узлами в обратном порядке, как это:
1/13/
1/12/123/
1/12/122/
1/12/121/
1/12/
1/11/
1/
Однако мы хотели бы узлы, чтобы остаться в этом порядке, но с родителем над ребенком узлы, как это:
1/
1/13/
1/12/
1/12/123/
1/12/122/
1/12/121/
1/11/
Единственным решением, которое я могу думать включает рекурсивный КТР, которое свело бы много преимущества использования HierarchyId. Кто-нибудь есть идеи о том, как это сделать?
Спасибо,
Джо