Gilberto pasa que lo que tengo que poner en la tabla de retorno viene de cálculos y no de tablas obtenidas de un query
Guillermo Villanueva <http://ar.linkedin.com/in/guillermovillanueva> El 27 de febrero de 2013 17:08, Gilberto Castillo < [email protected]> escribió: > > > > 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 > > > > prueba utilizar return query en vez del return next > > Saludos, > Gilberto Castillo > La Habana, Cuba > > --- > This message was processed by Kaspersky Mail Gateway 5.6.28/RELEASE > running at host imx3.etecsa.cu > Visit our web-site: <http://www.kaspersky.com>, <http://www.viruslist.com> > >
