Buenas tardes amigos tengo un problema al querer poner un *case* en el *order
by* de una consulta.
Resulta que tengo una función que me sirve para 2 cosas distintas con tan
solo cambiarle el sentido al orden del query que uso.
algo como esto :
CREATE OR REPLACE FUNCTION pagar( id_deuda integer, modo integer, monto
double precision)
RETURNS double precision AS
$BODY$
declare
_cur_amort refcursor;
_amort tabla_amortizacion%rowtype;
open
_cur_amort
for
select
*
from
tabla_amortizacion
where
deuda_id = id_deuda
order by case
when modo =1 then fecha asc
else fecha desc end;
loop
/* contenido */
end loop;
close _cur_amort;
return monto;
END
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
PD:
*Intenté colocar [if (modo = 1 ) then ] luego del for y tampoco me lo
permitió. *
*Otra cosa que intenté fue colocar el resultado del case entre comillas y
tampoco. *
_________________
····· ¢Ð@ŋı€łg ·····
¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
"Ningún hombre es más grande que el que se vence a sí mismo por cumplir con
su deber.."
Eugenio María De Hostos
[Imprima sólo si es necesario, cuidemos nuestro planeta]