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

Нужно сделать выборку из первой таблицы, и для каждой строки этой выборки сделать подзапросы к оставшимся таблицам. Каждый подзапрос будет возвращать одну строку. Результаты нужно обьеденить в один и вернуть из процедуры.. Ну как бы сложение полей для каждой строки из трех выборок получается.

Как это можно сделать?
...
Рейтинг: 0 / 0
Помогите с хранимыми процедурами и возвращением массива из нескольких запросов
    #33321137
Фотография XM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nassaja wrote:
> Ситуация такая, есть три таблицы.
>
> Нужно сделать выборку из первой таблицы, и для каждой строки этой
> выборки сделать подзапросы к оставшимся таблицам. Каждый подзапрос будет
> возвращать одну строку. Результаты нужно обьеденить в один и вернуть из
> процедуры.. Ну как бы сложение полей для каждой строки из трех выборок
> получается.
>
> Как это можно сделать?

Или я туплю, или автор о чем-то умолчал.
По описанию - все решается через JOIN без ХП и массивов(?).
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Помогите с хранимыми процедурами и возвращением массива из нескольких запросов
    #33321179
nassaja
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да решается, тогда как запихнуть джоин в ХП?
...
Рейтинг: 0 / 0
Помогите с хранимыми процедурами и возвращением массива из нескольких запросов
    #33321197
Фотография XM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nassaja wrote:
> Да решается, тогда как запихнуть джоин в ХП?

А что, без ХП совсем нельзя?
VIEW, например, сделать?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Помогите с хранимыми процедурами и возвращением массива из нескольких запросов
    #33321252
nassaja
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
; ) Ну, вопрос и академический в том числе. Как можно сделать выборку в ХП, обработать её добавив новые поля из других таблиц и вернуть из ХП клиенту. Причем сделать так, что бы ХП не напоминала войну и мир по размеру.
...
Рейтинг: 0 / 0
Помогите с хранимыми процедурами и возвращением массива из нескольких запросов
    #33321263
Фотография XM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nassaja wrote:
> ; ) Ну, вопрос и академический в том числе. Как можно сделать выборку в
> ХП, обработать её добавив новые поля из других таблиц и вернуть из ХП
> клиенту. Причем сделать так, что бы ХП не напоминала войну и мир по размеру.
Quick Hack:
Код: 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.
26.
create type my_record_type as (
         oid oid,
         relname name,
         attname name,
         attype  text
);
create type my_small_record as (
         oid oid,
         relname name
);
create or replace function silly_question () returns setof 
my_record_type as $$
declare _r my_small_record;
         _r2 my_record_type;
begin
         for _r in select oid, relname from pg_class  where relkind = 
'r' loop
                 for _r2 in select _r.*, attname, format_type(atttypid, 
atttypmod) as attype from pg_attribute where attrelid = _r.oid and not 
attisdropped and attnum >  0  loop
                 return next _r2;
                 end loop;
         end loop;
         return;
end
$$ language 'plpgsql';
Типа эдакого?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Помогите с хранимыми процедурами и возвращением массива из нескольких запросов
    #33321278
nassaja
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А без создания отдельных типов нельзя, как я понял. Ну это и понятно... Все для повышения быстродействия
...
Рейтинг: 0 / 0
Помогите с хранимыми процедурами и возвращением массива из нескольких запросов
    #33321279
nassaja
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nassajaА без создания отдельных типов нельзя, как я понял. Ну это и понятно... Все для повышения быстродействия

А как джоин возвращать, тоже через отдельно созданный тип?
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Помогите с хранимыми процедурами и возвращением массива из нескольких запросов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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