Oracle - equivalencia de iif en oracle

 
Vista:

equivalencia de iif en oracle

Publicado por jorge castillo (1 intervención) el 07/12/2006 01:10:16
Buenas tardes, antes que todo quiero agradecer el tiempo que se toman en leer esto, pasando a mi pregunta es la siguiente:

se que en oracle existe la funcion decode(), y que todos dicen que es la equivalencia del iif de acces, pero tengo un problema, ya que no acepta operadores logicos, yo tengo una consulta de la siguiente forma:

Sum(decode(to_date(fecha_recepcion),to_date(sysdate),1,0)) AS hoy

y si funciona, pero solo trae las fechas de recepcion que sean igual a las del sistema, si quisiera un dia en especifico, (por ejemplo 2 dias hacia atras), haria lo siguiente:

Sum(decode(to_date(fecha_recepcion),to_date(sysdate-2),1,0)) AS hoy

pero yo quiero traer todas las fechas que sean menores a 15 dias, digamos que algo en teoria como esto:

Sum(decode(to_date(fecha_recepcion), <= to_date(sysdate-15),1,0)) AS hoy

y asi no funciona, hay alguna forma de hacerlo con el decode?, o tal vez de algun otro metodo, por favor les agradeceria mucho su apoyo en esta consulta, gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:equivalencia de iif en oracle

Publicado por Rodolfo Reyes (445 intervenciones) el 07/12/2006 15:06:57
Puedes utilizar el CASE

SELECT cust_last_name,
CASE credit_limit WHEN 100 THEN 'Low'
WHEN 5000 THEN 'High'
ELSE 'Medium' END
FROM customers
/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:equivalencia de iif en oracle

Publicado por Rumbe (1 intervención) el 06/11/2007 13:52:32
La equivalencia al IIF de microsoft en oracle es el CASE WHEN

CASE WHEN (operación lógica)
THEN instrucción
WHEN (operación lógica)
THEN instrucción
....
ELSE instrucción
END

Si he cometido algún error de escritura ruego me disculpes pero la estructura principal es esta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar