Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Запрос на получение иерархии из одной таблицы  [new]
Davulcu
Member

Откуда:
Сообщений: 21
Всем доброго времени суток!

Есть задача:
В одной таблице (см. вложение) хранятся все папки с ID, в этой же таблице указан и ID папки родителя.
Необходим запрос который будет выводить представление вида (пример строки для Папки 5):

"5", "Папка 5", "Корневая папка\Папка 3\Папка 5\"

Особенностью запроса должно являться то, что он используется как подзапрос, т.е. JOIN-ом будет присоединен к другому представлению. В головном запросе будет опрашиваться таблица файлов, присоединяться к ней их описание и пути, полученные в запросе из этой темы.

Я понимаю, что тема возможно избита и уже много раз поднималась, но мне моего уровня не хватило, чтобы понять варианты решения чужие и применить их у себя. Товарищи знатоки, не ругайтесь сильно, а помогите примерами запросов для решения моей задачи. Заранее очень благодарен!!!

Если уже есть ветка (ссылка) на тему, где проблема один в один с моей, то можно просто дать мне ссылку.

К сообщению приложен файл. Размер - 35Kb
17 сен 13, 17:41    [14850795]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на получение иерархии из одной таблицы  [new]
serpentariy
Member

Откуда:
Сообщений: 265
Davulcu,
Как-то так:
;with cte
as
(select id,name,cast(name as varchar(100)) as fullname
 from Таблица
 where parentid=-1
 union all
 select t.id,t.name,cast(c.fullname+'\'+t.name as varchar(100))
 from @Таблица t join cte c on t.parentid=c.id
)
select *
from cte
order by id
17 сен 13, 18:09    [14850917]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на получение иерархии из одной таблицы  [new]
SERG1257
Member

Откуда:
Сообщений: 2752
http://technet.microsoft.com/ru-ru/library/ms186243(v=sql.105).aspx
17 сен 13, 20:58    [14851356]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на получение иерархии из одной таблицы  [new]
Davulcu
Member

Откуда:
Сообщений: 21
serpentariy, SERG1257,

Огромное Вам спасибо, Знатоки! Получилось!!
17 сен 13, 21:14    [14851393]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить