Re: RETURNS TABLE

From: Juan <smalltalker(dot)marcelo(at)gmail(dot)com>
To: "Guillermo E(dot) Villanueva" <guillermovil(at)gmail(dot)com>
Cc: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: RETURNS TABLE
Date: 2013-02-27 20:19:03
Message-ID: CAKizN9yFCcfaiTusq8NwZ-NVHYWZKFB2rpxbtCtQMV+rSmX1=g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Guillermo

Hasta donde se el return next ; es dentro de un for... loop que en tu code
no se ve.
Ademas es return next var;
donde var es la variable que venis recorriendo en el loop.
si realmente tenes un loop, arma un tipo (type) con los campos ( que
necesites) y que vos queres y devolver en cada
iteracion devolvelo.
si por ej se llama t , la variable seria algo asi.

declare t type;
...
beguin

for ...

t.campo1= alguncalculo;
t.campo2= otrocalculo ;

return next t
loop
..
end

salu2

jmdc

2013/2/27 Guillermo E. Villanueva <guillermovil(at)gmail(dot)com>

> Amigos no puedo encontrar ni en la doc oficial ni en google algo muy
> simple, quiero declarar una función de tipo tabla que va a devolver 3 o 4
> datos nada mas en una tabla de una sola columna, esos datos provienen de
> unos cálculos
> Intenté algo así:
> CREATE OR REPLACE FUNCTION mifuncion(parametros) RETURNS table(columna
> integer) AS
> $BODY$
> declare
> li_retorno integer := -1;
> li_retorno_ext integer := -1;
> ...
> ...
>
> begin
> ...
> ...
> columna := li_retorno;
> return next;
> if li_retorno_ext <> -1 then
> columna := li_retorno_ext;
> return next;
> end if;
> end;
> $BODY$
> LANGUAGE plpgsql
>
> Cuando debería devolver dos filas, me devuelve uno solo, estoy seguro que
> esa no es la forma de ir armando fila por fila. Cual sería la forma? Una
> tabla temporal adentro de la función?
> Desde ya muchas gracias
>
> Guillermo Villanueva
>
>

In response to

  • RETURNS TABLE at 2013-02-27 19:59:11 from Guillermo E. Villanueva

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Guillermo E. Villanueva 2013-02-27 20:21:52 Re: RETURNS TABLE
Previous Message marcelo mendoza 2013-02-27 20:13:35 Re: RETURNS TABLE