powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Рекурсивный SQL-запрос
8 сообщений из 8, страница 1 из 1
Рекурсивный SQL-запрос
    #35012988
UnrealMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ, такая трабла: есть таблица с полем p_count, указывающим количество товаров на складе. Мне требуется написать рекурсивный запрос таким образом, чтобы вывести каждый товар столько раз, сколько указано в поле p_count. Например, если для товара поле p_count = 3, то следует вывести эту запись 3 раза.
Если применять курсор для решения подобной задачи, то проблем не возникает, но мне необходимо реализовать это именно рекурсией.
...
Рейтинг: 0 / 0
Рекурсивный SQL-запрос
    #35013099
Фотография Dmitry.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sql запрос не может быть рекурсивным (на сколько я знаю)
задача явно шире чем просто повторять одну и ту-же строчку по несколько раз.
...
Рейтинг: 0 / 0
Рекурсивный SQL-запрос
    #35020536
panu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
запрос рекурсивным может быть!, однако - я не могу себе представить, как реализовать рекурсией - поставленную задачу.
я пробовал только дерево вытаскивать из таблицы - получалось (описан пример в фаге)
...
Рейтинг: 0 / 0
Рекурсивный SQL-запрос
    #35020546
panu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.sql.ru/faq/faq_topic.aspx?fid=203
...
Рейтинг: 0 / 0
Рекурсивный SQL-запрос
    #35020603
Марсель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SELECT * FROM table, lateral(sa_rowgenerator(1, table.p_count)) b

так пойдет ?
...
Рейтинг: 0 / 0
Рекурсивный SQL-запрос
    #35020753
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
panu пишет:
> запрос рекурсивным может быть!, однако - я не могу себе представить, как
> реализовать рекурсией - поставленную задачу.

Далеко не везде.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Рекурсивный SQL-запрос
    #35020998
salt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здесь конечно мало рекурсии но задача решается

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
create table ppp (value char( 10 ) default '', cnt int default  0 )

insert into ppp values('a',  1 );
insert into ppp values('b',  3 );
insert into ppp values('c',  2 );
insert into ppp values('d',  1 );
insert into ppp values('e',  10 );


create table seq (value int NOT NULL default NULL UNIQUE)
insert into seq values( 0 )
insert into seq values( 1 )
insert into seq values( 2 )
insert into seq values( 3 )
insert into seq values( 4 )
insert into seq values( 5 )
insert into seq values( 6 )
insert into seq values( 7 )
insert into seq values( 8 )
insert into seq values( 9 )
insert into seq values( 10 )

select a.* from ppp a, seq s
WHERE a.cnt > s.value

...
Рейтинг: 0 / 0
Рекурсивный SQL-запрос
    #35075590
Фотография FmDm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хорошая идея, но, наверное, правильнее будет

Код: plaintext
1.
2.
select a.* from ppp a, RowGenerator s
WHERE a.cnt >= s.row_num
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Рекурсивный SQL-запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]