powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / listagg
8 сообщений из 8, страница 1 из 1
listagg
    #39461228
Bauer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет.

Код: plsql
1.
SELECT LISTAGG(table_name, ';') WITHIN GROUP (ORDER BY table_name) tb_name FROM all_tables;-- where rownum =1;



Код: sql
1.
ORA-01489: result of string concatenation is too long



Пожалуйста, подскажите, как получить на выходе по десять записей в строке?

Спасибо.

Best Regards, Bauer.
...
Рейтинг: 0 / 0
listagg
    #39461236
Bauer,

разбить всё множество исходных данных на группы по 10 строк и сделать агрегацию?
...
Рейтинг: 0 / 0
listagg
    #39461245
Bauer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - Эх,

Разбить выходные данные на строчки в каждой из которых по десять записей...
т.е. что бы получилось так:

Код: sql
1.
2.
3.
4.
ICOL$ CON$ UNDO$ PROXY_ROLE_DATA$ FILE$ UET$ IND$ SEG$ COL$ CLU$ 
PROXY_DATA$ TS$ BOOTSTRAP$ FET$ CCOL$ USER$ OBJ$ TAB$ CDEF$ OBJERROR$ 
OBJAUTH$ HISTGRM$ HIST_HEAD$ FIXED_OBJ$ TAB_STATS$ IND_STATS$ OBJECT_USAGE PARTOBJ$ DEFERRED_STG$ DEPENDENCY$ 
ACCESS$.......................................
...
Рейтинг: 0 / 0
listagg
    #39461250
Bauer,

Код: plsql
1.
2.
3.
4.
SELECT ceil(rownum/10) x_num
     , LISTAGG(table_name, ';') WITHIN GROUP (ORDER BY table_name) tb_name
  FROM all_tables
group by ceil(rownum/10);


если требуется детерминированный по сортировке результат, то предварительно отсортировать и перенумеровать посредством row_number() over()
...
Рейтинг: 0 / 0
listagg
    #39461251
Bauer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - Эх,

Оно...

Спасибо!
...
Рейтинг: 0 / 0
listagg
    #39461604
Alex__kK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Написать свою функцию, которая будет возвращать clob
...
Рейтинг: 0 / 0
listagg
    #39462651
Фотография Ozornitca
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
конечно, тупое решение, но нельзя ли найти десятое повторение символа ';' и по нему сабстром ?:)

regexp сабстром))))
...
Рейтинг: 0 / 0
listagg
    #39462796
MaximaXXL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ozornitca,

Можно, но для этого надо сформировать строку для поиска, а при ее формировании выдает

ORA-01489: result of string concatenation is too long
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / listagg
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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