У меня есть таблица «Категория» со следующими полями:
[id]
[category]
[childCategory]
[parentId]
Я хотел бы получить набор результатов в виде древовидной структуры, поэтому я пытаюсь написать для нее cte.Дерево идет только на 4 уровня.Первый раз с cte, и я довольно смущен этим, совсем не знаком с сервером sql.
Кроме того, я не могу сказать о дизайне стола, это то, с чем я застрял.
Вот то, что я попробовал без удачи
'WITH cte ( category [Level])
AS (
SELECT id, category, parentId, childCategory, 0 as [Level]
FROM Category
WHERE parentId IS NULL AND childCategory IS NULL
UNION ALL
SELECT t.id, t.category, t.parentId, t.childCategory, [Level] + 1
FROM Category AS t
JOIN cte AS a
ON t.parentId = a.id
)
SELECT * FROM cte order by category, [Level]'
спасибо за любые предложения