Re: Returning multiple rows in 8.4

From: Raymond O'Donnell <rod(at)iol(dot)ie>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: Returning multiple rows in 8.4
Date: 2009-11-09 22:43:17
Message-ID: 4AF89B05.8010602@iol.ie
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 19:59, wrote:
> how can I write a function to return multiple rows? ( in plpgsql )

Yep, it's all in the docs:

http://www.postgresql.org/docs/8.4/static/plpgsql-control-structures.html#PLPGSQL-STATEMENTS-RETURNING

> what is the return value of the function? records?

Depends on how you declare the function. There's an implicit type
declared for each table and view, so you can have your function return
SETOF users -

create or replace function my_function(....)
returns setof users
as ... (etc)

- and then the returned set will be rows of the users table.

Alternatively, you could declare a custom type and return a SETOF that
instead.

Finally, you can use OUT parameters to return multiple values from the
function - this is handy if you need to return just a few values.

Ray.

--
Raymond O'Donnell :: Galway :: Ireland
rod(at)iol(dot)ie

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Alvaro Herrera 2009-11-09 22:49:12 Re: What to install to be able to build docs on Arch Linux?
Previous Message Gordon Callan 2009-11-09 22:36:18 Tsearch2 with Japanese