Обсуждение: out parameters and SETOF
Hi, there is a way to use OUT parameters in conjunction with SETOF? -- regards, Jaime Casanova (DBA: DataBase Aniquilator ;)
On Thu, Jan 19, 2006 at 04:03:41PM -0500, Jaime Casanova wrote:
> there is a way to use OUT parameters in conjunction with SETOF?
Do you want to return a set of the OUT parameters or a set of
something else? I don't think you can do the latter; for the former
use SETOF record:
CREATE FUNCTION foo(OUT x integer, OUT y integer)
RETURNS SETOF record AS $$
BEGIN
x := 1; y := 2; RETURN NEXT;
x := 3; y := 4; RETURN NEXT;
x := 4; y := 5; RETURN NEXT;
END;
$$ LANGUAGE plpgsql;
SELECT * FROM foo();
x | y
---+---
1 | 2
3 | 4
4 | 5
(3 rows)
--
Michael Fuhr
On 1/19/06, Michael Fuhr <mike@fuhr.org> wrote: > On Thu, Jan 19, 2006 at 04:03:41PM -0500, Jaime Casanova wrote: > > there is a way to use OUT parameters in conjunction with SETOF? > > Do you want to return a set of the OUT parameters or a set of > something else? I don't think you can do the latter; for the former > use SETOF record: > > CREATE FUNCTION foo(OUT x integer, OUT y integer) > RETURNS SETOF record AS $$ > BEGIN > x := 1; y := 2; RETURN NEXT; > x := 3; y := 4; RETURN NEXT; > x := 4; y := 5; RETURN NEXT; > END; > $$ LANGUAGE plpgsql; > > SELECT * FROM foo(); > x | y > ---+--- > 1 | 2 > 3 | 4 > 4 | 5 > (3 rows) > > -- > Michael Fuhr > ok, thanks -- regards, Jaime Casanova (DBA: DataBase Aniquilator ;)