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 <[email protected]> > 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 > >
