Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / PostgreSQL Новый топик    Ответить
 cannot open SELECT query as cursor  [new]
neteurt
Member

Откуда:
Сообщений: 81
Подскажите как переменной doc_id_return присвоить значение doc_id
Пробовал несколько вариантов, ничего не получается
doc_id имеет тип serial
               RETURN QUERY
                   WITH TRW AS (
                     INSERT INTO docs (doc_type_id,series_doc,number_doc,date_doc)
                     SELECT doc_type_id, NULLIF(series_doc,''), NULLIF(number_doc,''),date_doc
                       FROM docs_buf
                      WHERE doc_buf_id = p_id
                     RETURNING doc_id --INTO doc_id_return
                   )
               SELECT CAST(TRW.doc_id as INT4) INTO doc_id_return
               FROM TRW
               GROUP BY TRW.doc_id
;

           --    EXECUTE QUERY INTO doc_id_return;
10 июн 20, 11:55    [22148635]     Ответить | Цитировать Сообщить модератору
 Re: cannot open SELECT query as cursor  [new]
grgdvo
Member

Откуда:
Сообщений: 101
neteurt,

Что вы хотите вернуть из srf-функции??
Набор doc_id ??
10 июн 20, 14:28    [22148791]     Ответить | Цитировать Сообщить модератору
 Re: cannot open SELECT query as cursor  [new]
neteurt
Member

Откуда:
Сообщений: 81
grgdvo, да
10 июн 20, 15:47    [22148841]     Ответить | Цитировать Сообщить модератору
 Re: cannot open SELECT query as cursor  [new]
Melkij
Member

Откуда: Санкт-Петербург
Сообщений: 1074
neteurt,

функция returns что именно? table? setof int4?
И вы уж определитесь, вы хотите "INTO doc_id_return" либо return query.
11 июн 20, 13:21    [22149337]     Ответить | Цитировать Сообщить модератору
Все форумы / PostgreSQL Ответить