Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/02/2015, 13:23
Avatar de ras_chalo
ras_chalo
 
Fecha de Ingreso: junio-2010
Mensajes: 369
Antigüedad: 13 años, 10 meses
Puntos: 6
Pregunta reemplazar Case When por NVL ??

hola a todos, estoy tratando de modificar una linea de codigo con CASE WHEN por usar NVL para que mi query sea mas eficiente. el problema es que no logro dar con la solucion correcta;
Código SQL:
Ver original
  1. SUM((inv_total_l - total_paid_l - cr_note_tot_l) *
  2.   (CASE WHEN (sysdate - m560.due_date) >= to_number(m002.odue_categx2) AND (sysdate - m560.due_date) < to_number(m002.odue_categx3) THEN 1 ELSE 0 END)) odue_3,

mi idea es sustituir el case when por la funcion NVL, pero no me resulta, me tira error. la forma que lo hago es la siguiente:

Código SQL:
Ver original
  1. SUM((inv_total_l - total_paid_l - cr_note_tot_l) *
  2.   NVL ((sysdate - m560.due_date) >= to_number(m002.odue_categx2) AND (sysdate - m560.due_date) < to_number(m002.odue_categx3) , 0 )) odue_3,

Pero nada, alguna idea del porque no me funciona?, como debiera hacerlo?
desde ya muchas gracias,
saludos!

Última edición por ras_chalo; 18/02/2015 a las 13:42