Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
21.01.2019, 02:09
|
|||
---|---|---|---|
|
|||
plpgsql возврат структуры таблицы по результату функции |
|||
#18+
Здравствуйте! Написал функцию на plpgsql Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Возвращает таблицу из двух колонок. Возможно ли обойтись без returns table (где определенно заданные типы данных и кол-во колонок), а использовать RETURNS SETOF или еще что-то для возврата тех колонок и тех типов, которые будут выдаваться после RETURN query (динамическая таблица с разным кол-вом колонок и типами)? Заранее огромное спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.01.2019, 09:06
|
|||
---|---|---|---|
|
|||
plpgsql возврат структуры таблицы по результату функции |
|||
#18+
mcmot, сделать функцию, которая бы возвращала динамическую структуру нельзя, но 1) можно вернуть таблицу с полем JSON - универсально, но затраты на преобразование в JSON 2) либо функцию, которая генерит текстовый SQL, который выполняется через PREPARE , затем EXECUTE ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.01.2019, 11:29
|
|||
---|---|---|---|
|
|||
plpgsql возврат структуры таблицы по результату функции |
|||
#18+
mcmotВозможно ли обойтись без returns table (где определенно заданные типы данных и кол-во колонок), а использовать RETURNS SETOF или еще что-то для возврата тех колонок и тех типов, которые будут выдаваться после RETURN query (динамическая таблица с разным кол-вом колонок и типами)? Разумеется можно: Код: sql 1. 2. 3. 4. 5. 6. 7.
Только при вызове нужно обязательно указывать структуру таблицы: Код: sql 1. 2. 3. 4. 5.
иначе будет ошибка: Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.01.2019, 12:01
|
|||
---|---|---|---|
|
|||
plpgsql возврат структуры таблицы по результату функции |
|||
#18+
Павел ЛузановРазумеется можно: ... Только при вызове нужно обязательно указывать структуру таблицы: Прикольно, этот способ оказался вычеркнут из моей ассоциативной памяти. Как то попробовал пару раз, решил что такие функции писать совсем нехорошо, видимо поэтому мои нейроны выдали, что такого способа не существует :-). ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.01.2019, 20:56
|
|||
---|---|---|---|
|
|||
plpgsql возврат структуры таблицы по результату функции |
|||
#18+
Спасибо всем! Очень помогли! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=53&mobile=1&tid=1995395]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
51ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 263ms |
total: | 404ms |
0 / 0 |