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

Откуда:
Сообщений: 323
Добрый день!

Есть запрос

SELECT DISTINCT ID, Имя, ID_РодКатегории
FROM  КатегорииДоход


Результат выходит 

ID Имя ID_РодКатегории
1	Продвижение	NULL
2	Сайт Автомойка	1
3	Сайт Свахмен	1
4	Внешняя оптимизация	2
5	Внутренняя оптимизация	2


Помогите сообразить как написать запрос чтоб было

Результат:
Имя
Продвижение
-Сайт Автомойка
--Внешняя оптимизация
--Внутренняя оптимизация
-СайтСвахмен


Очень буду благодарна.
9 июн 15, 10:10    [17747987]     Ответить | Цитировать Сообщить модератору
 Re: Категории и подкатегории  [new]
Glory
Member

Откуда:
Сообщений: 104751
https://technet.microsoft.com/en-us/library/ms186243(v=sql.105).aspx
9 июн 15, 10:11    [17747991]     Ответить | Цитировать Сообщить модератору
 Re: Категории и подкатегории  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
SELECT ISNULL(REPLICATE('-',ID_РодКатегории),'')+Имя
FROM КатегорииДоход
ORDER BY ID;
9 июн 15, 10:13    [17748000]     Ответить | Цитировать Сообщить модератору
 Re: Категории и подкатегории  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
iap
SELECT ISNULL(REPLICATE('-',ID_РодКатегории),'')+Имя
FROM КатегорииДоход
ORDER BY ID;
Извините, неправ
9 июн 15, 10:14    [17748005]     Ответить | Цитировать Сообщить модератору
 Re: Категории и подкатегории  [new]
da haroch
Member

Откуда:
Сообщений: 323
iap, да да тут условие нужно вводить, вот пока сообразить не могу, кретинизм у меня.
9 июн 15, 10:21    [17748041]     Ответить | Цитировать Сообщить модератору
 Re: Категории и подкатегории  [new]
Minamoto
Member

Откуда: Москва
Сообщений: 1162
da haroch, какое условие? Выше дали ссылку на рекурсивные запросы- на первом уровне рекурсии выбираете корневые разделы, далее добавляете к ним дочерние.
Чтобы поставить в начале тире, введите в рекурсию поле с уровнем рекурсии (для корня - 0, для дочерних - уровень + 1), и при выводе данных просто реплицируйте тире количество раз, равное значению уровня.
9 июн 15, 10:24    [17748060]     Ответить | Цитировать Сообщить модератору
 Re: Категории и подкатегории  [new]
da haroch
Member

Откуда:
Сообщений: 323
Minamoto, сижу читаю, у меня беда с рекурсиями, один раз в жизни сталкивалась и потом больше не было желания, но сейчас попробую.
9 июн 15, 10:26    [17748069]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить