From: | Hannu Krosing <hannu(at)krosing(dot)net> |
---|---|
To: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: proposal: table functions and plpgsql |
Date: | 2008-05-21 17:28:12 |
Message-ID: | 1211390892.7045.10.camel@huvostro |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Wed, 2008-05-21 at 18:12 +0200, Pavel Stehule wrote:
> Hello
...
> In my proposal I don't create any default variables. Result type is
> only virtual - I don't need write it to system directory. I thing it's
> better than using some specific predeclared type as RESULTTYPE OR
> RESULTSET.
How is this different from using OUT params and RETURNS SETOF RECORD ?
hannu=# CREATE FUNCTION outsetof2py(n integer, OUT i integer, OUT j
integer) RETURNS SETOF record
AS $$
for i in xrange(n):
yield {'i':i,'j':i*i}
$$
LANGUAGE plpythonu;
CREATE FUNCTION
hannu=# select * from outsetof2py(3);
i | j
---+---
0 | 0
1 | 1
2 | 4
(3 rows)
btw, this currently works for pl/python only in my local copy (still
testing for bugs), but similar declaration works fine for pl/pgsql
--------------
Hannu
From | Date | Subject | |
---|---|---|---|
Next Message | Merlin Moncure | 2008-05-21 17:31:01 | Re: proposal: table functions and plpgsql |
Previous Message | Gregory Stark | 2008-05-21 17:04:34 | Re: [HACKERS] WITH RECURSIVE patch V0.1 |