powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / db2 9.7 ARRAY_AGG
2 сообщений из 2, страница 1 из 1
db2 9.7 ARRAY_AGG
    #39533968
talent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток! Есть такие структуры данных
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
CREATE OR REPLACE TYPE TYPE_ROW AS ROW (
	"ID" INTEGER,
	"DATE1" TIMESTAMP,
	"DATE2" TIMESTAMP,
	"NAME" VARCHAR(20))
@

CREATE OR REPLACE TYPE TYPE_ROW_ARR AS TYPE_ROW  ARRAY[]
@



Можно ли как-нибудь, используя SELECT заполнить массив TYPE_ROW_ARR? Т.е. например
Код: plsql
1.
2.
3.
4.
5.
6.
7.
....
DECLARE VAR_ARRAY TYPE_ROW_ARR 
....
SELECT ARRAY_AGG(T.ID), ARRAY_AGG(T.DATE1), ARRAY_AGG(T.DATE2), ARRAY_AGG(T.NAME)
--либо может ARRAY_AGG(T.ID, T.DATE1, T.DATE2, T.NAME)
INTO VAR_ARRAY 
FROM TABLE1 AS T


либо какие-нибудь другие варианты без цикла по "SELECT". Здесь SSEPGG_9.7.0 пишут
Код: html
1.
ARRAY_AGG cannot be used to produce an associative array or an array with a row element data type (SQLSTATE 42846).


Что структура данных типа "ROW"(мой случай) не будет работать. Заранее спасибо!
...
Рейтинг: 0 / 0
db2 9.7 ARRAY_AGG
    #39534000
talent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пробовал с "BULK COLLECT"
Код: plsql
1.
2.
3.
4.
5.
6.
....
DECLARE VAR_ARRAY TYPE_ROW_ARR 
....
SELECT T.ID, T.DATE1, T.DATE2, T.NAME
BULK COLLECT INTO VAR_ARRAY 
FROM TABLE1 AS T


Происходит ошибка
Код: plsql
1.
SQL0104N  Обнаружен неправильный элемент "COLLECT" после текста
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / db2 9.7 ARRAY_AGG
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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