Re: Fetching from psql procedures
| От | Pavel Stehule | 
|---|---|
| Тема | Re: Fetching from psql procedures | 
| Дата | |
| Msg-id | CAFj8pRB=Hrn1MT4E9UnOxOTJpqUjr8iOGw0+ib5DBaqfZ6J-wA@mail.gmail.com обсуждение исходный текст  | 
		
| Ответ на | Fetching from psql procedures (Marc Mamin <M.Mamin@intershop.de>) | 
| Ответы | 
                	
            		Re: Fetching from psql procedures
            		
            		 | 
		
| Список | pgsql-general | 
Hi
		
	2015-11-19 14:51 GMT+01:00 Marc Mamin <M.Mamin@intershop.de>:
Hi,
I'm looking for a way to build large xml documents based on a set of tables, hence using recursive queries.
something like:
FOR rec1 IN ...
FOR rec2 IN ...
RETURN QUERY select '<foo>
FOR rec3 IN ...
RETURN QUERY select (XMLELEMENT (...))::text
END LOOP;
RETURN QUERY select '</foo>
END LOOP;
END LOOP;
but if I wrap this in a function, it seems that I won't get a result before the whole document is prepared.
Is there any way to stream the result as it get produced ?
or does anybody knows of a good tutotial for a task like this ?
you can try CTE Common Table Expression. It isn't possible with plpgsql :(
Theoretically you can write C extension where SRF function can returns data continually.But plpgsql function using local stack and returns data as block.
Regards
Pavel 
 
thanks and best regards,
Marc Mamin
--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
В списке pgsql-general по дате отправления: