Search Postgresql Archives

Re: return setof : alternatives to holder table

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Aug 15, 2010 at 3:10 AM, Craig Ringer <craig@xxxxxxxxxxxxxxxxxxxxx> wrote:
On 15/08/10 18:00, zhong ming wu wrote:

> Thanks for any better solution to this

CREATE TYPE

However, you still have to have a special type around just for that
function, and you have to *maintain* it to ensure it always matches the
types/columns of the input tables.

I frequently wish for type inference in PL/PgSQL functions returning
query results, so Pg could essentially create and destroy a type along
with the function, allowing you to reference columns in the functions
results without having to use RETURNS RECORD and all that AS
(column-list) pain.

Of course, I don't want it badly enough to put my time where my mouth is
and try to code it ;-) . I'm not whining about the current situation,
just thinking about ways it could improve further.



How about just using OUT parameters?

CREATE FUNCTION FOO(IN _id uuid, OUT col1 text, OUT col2 text)
   RETURNS SETOF record AS
   BEGIN
      select col1, col2 from test where id=_id;
   END;

Then your output just has to match the signature of the OUT parameters.  And you don't need to define anything when you call it.

Mike

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux