Re: SETOF - Mailing list pgsql-sql

From Christoph Haller
Subject Re: SETOF
Date
Msg-id 3E65E3C5.1D964F0D@rodos.fzk.de
Whole thread Raw
In response to SETOF  (Fernando <fernando@icreativa.com.mx>)
Responses Re: SETOF  (Greg Stark <gsstark@mit.edu>)
List pgsql-sql
>
> CREATE FUNCTION ejem1(varchar) RETURNS SETOF to varchar as'=20
> SELECT names from mi_tabla WHERE city =3D $1; '=20
> language ' SQL ';=20
>
>   ejem1=20
> ------------
>   Sergio=20
>   Carlos=20
>   Fernando=20
>
> When wanting to obtain several columns I do this...=20
>
> CREATE FUNCTION ejem2(varchar) RETURNS SETOF mi_tabla as'=20
> SELECT * from mi_tabla WHERE city =3D $1;'=20
> language ' SQL ';=20
>
>   ejem2=20
> ---------------
>   137956448=20
>   137956448=20
>   137956448=20
>
> The number of registries that return is the correct, the question is,
becau=
> se=20
> it does not return the fields of the table, and that is what in its
place=
> =20
> this showing to me...=20
> Greetings and thank you very
much!=20=20=20=20=20=20=20=20=20=20=20=20=20=
> =20=20
>
You cannot obtain several columns from SQL functions.
See the list archives (search for SETOF) for details.
You have to use e.g. a plpgsql function instead.

Regards, Christoph




pgsql-sql by date:

Previous
From: Achilleus Mantzios
Date:
Subject: Re: DELETE FROM A BLACK LIST
Next
From: Greg Stark
Date:
Subject: Re: SETOF