Creo que podrías escribirlo asi: select col_1, col_2, fn_funciondeusuario(parametros) col_result, case when fn_funciondeusuario(parametros) > 0 then 'L' else 'D' END col_4 from tablas;
o asi: select col_1, col_2, col_result, case when col_result > 0 then 'L' else 'D' END col_4 (select col_1, col_2, fn_funciondeusuario(parametros) col_result, from tablas) t; Es más veloz la segunda. >________________________________ > De: Guillermo E. Villanueva <guillermo...@gmail.com> >Para: pgsql-es-ayuda <pgsql-es-ayuda@postgresql.org> >Enviado: Miércoles 6 de febrero de 2013 9:39 >Asunto: [pgsql-es-ayuda] Uso de resultado de función en la misma proyección o >en el filtro > > >Buenos días, gente hay posibilidad de utilizar el resultado de una función o >de un cálculo en la misma consulta para la misma tupla? >por ejemplo >select > col_1, > col_2, > fn_funciondeusuario(parametros) col_result, > case when col_result > 0 then 'L' else 'D' END col_4 >from > tablas; > > >Si lo ejecuto así nomas me dice que no existe la columna col_result, lo que yo >quiero es que no tenga que calcular 2 veces lo mismo. Es posible de alguna >manera? > > >Desde ya muchas gracias! > > >Guillermo > > > > > > > > > > >Guillermo Villanueva > > >