3
Я использую рекурсивный запрос для идентификации всех связанных дочерних категорий данного идентификатора категории.Рекурсивный SQL-запрос по убыванию
WITH parent AS (SELECT ParentId, Title, Id
FROM [CocoDb].[dbo].[Categories]
WHERE Id = @CategoryId),tree AS
(
SELECT x.ParentId, x.Id, x.Title
FROM [CocoDb].[dbo].[Categories] x
INNER JOIN parent ON x.ParentId = parent.Id
UNION ALL
SELECT y.ParentId, y.Id, y.Title
FROM [CocoDb].[dbo].[Categories] y
INNER JOIN tree t ON y.ParentId = t.Id
)
SELECT * FROM Tree
Моя таблица:
Categories (ID INT PRIMARY KEY, ParentId INT, Title VARCHAR(MAX))
Вопрос для SQL Server: может у меня есть запрос, который возвращает все категории?
В качестве примера:
- Книги (ID: 1, Родитель: 0)
- Ужасы (Id: 2, Родитель: 1)
- Стивена Кинга (Id: 3, Родитель: 2)
И теперь, если я попрошу Стивена Кинга (Id 3), я получу все связанные категории, например, в этом случае Книги и Ужасы.
Возможно ли это с помощью рекурсивного SQL-запроса?
С наилучшими пожеланиями
Не проблема, рад, что это помогло :) –