Re: Return unknown resultset from a function

From: Rory Campbell-Lange <rory(at)campbell-lange(dot)net>
To: Jan Meyland Andersen <jma(at)agile(dot)dk>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Return unknown resultset from a function
Date: 2012-03-04 20:43:15
Message-ID: 20120304204315.GA11159@campbell-lange.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 04/03/12, Jan Meyland Andersen (jma(at)agile(dot)dk) wrote:
> How do I return an unknown resultset from a function
>
> My main problem is that I do not know how many columns or the data
> type of the columns before runtime.
> It this possible at all?
>
> I also tried to return the data as a text array but I also have
> trouble with that.

There is a section on this in the docs at (for instance)
http://www.postgresql.org/docs/8.4/static/xfunc-sql.html#XFUNC-OUTPUT-PARAMETERS

A specific example which may help is

CREATE FUNCTION new_emp() RETURNS emp AS $$
SELECT ROW('None', 1000.0, 25, '(2,2)')::emp;
$$ LANGUAGE SQL;

Note that there are two ways of calling such a function. You probably
want the "SELECT *" form.

Rory

--
Rory Campbell-Lange
rory(at)campbell-lange(dot)net

Campbell-Lange Workshop
www.campbell-lange.net
0207 6311 555
3 Tottenham Street London W1T 2AF
Registered in England No. 04551928

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Rory Campbell-Lange 2012-03-04 20:58:09 Re: Return unknown resultset from a function
Previous Message Tom Lane 2012-03-04 20:11:45 Re: || versus concat( ), diff behavior