Re: PL/pgSQL PERFORM with CTE
От | David E. Wheeler |
---|---|
Тема | Re: PL/pgSQL PERFORM with CTE |
Дата | |
Msg-id | EA4D28FD-FE4B-4643-A6DC-F8D93C99C4FA@justatheory.com обсуждение исходный текст |
Ответ на | Re: PL/pgSQL PERFORM with CTE (Pavel Stehule <pavel.stehule@gmail.com>) |
Ответы |
Re: PL/pgSQL PERFORM with CTE
Re: PL/pgSQL PERFORM with CTE |
Список | pgsql-hackers |
On Aug 20, 2013, at 2:31 PM, Pavel Stehule <pavel.stehule@gmail.com> wrote: > but it works > > postgres=# do $$begin with x as (select 10) insert into omega select * from x; end;$$; > DO But this does not: david=# DO $$ david$# BEGIN david$# PERFORM * FROM ( david$# WITH inserted AS ( david$# INSERT INTO foo values (1) RETURNING id david$# ) SELECT inserted.id david$# ) x; david$# END; david$# $$; ERROR: WITH clause containing a data-modifying statement must be at the top level LINE 2: WITH inserted AS ( ^ QUERY: SELECT * FROM ( WITH inserted AS ( INSERT INTO foo values (1) RETURNING id ) SELECT inserted.id ) x CONTEXT: PL/pgSQL function inline_code_block line 3 at PERFORM Best, David
В списке pgsql-hackers по дате отправления: