Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

if en select...

Estas en el tema de if en select... en el foro de Oracle en Foros del Web. hola, en primer lugar... gracias por su ayuda... uso oracle 8... puedo hacer esto??? Código: select if(campo_1 > campo_2, 'mayor', 'menor') as 'RESULTADO' from tabla ...
  #1 (permalink)  
Antiguo 11/11/2010, 18:32
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 16 años, 4 meses
Puntos: 25
if en select...

hola, en primer lugar... gracias por su ayuda... uso oracle 8...

puedo hacer esto???

Código:
select if(campo_1 > campo_2, 'mayor', 'menor') as 'RESULTADO' from tabla
????, con DECODE segun tengo entendi funciona si el valor es igual, la función CASE creo que funciona a partir de la version 9....

como podria generar esa consulta???
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #2 (permalink)  
Antiguo 12/11/2010, 09:21
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 2 meses
Puntos: 447
Respuesta: if en select...

Si no mal recuerdo el Case fue introducido en la versión 8 de Oracle no en la 9, deberías hacer la prueba con esto

Código SQL:
Ver original
  1. SELECT CASE WHEN campo_1 > campo_2 THEN 'mayor' ELSE 'menor' END AS resultado
  2. FROM tabla

Saludos
Leo.
  #3 (permalink)  
Antiguo 12/11/2010, 09:38
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 1 mes
Puntos: 360
Respuesta: if en select...

Creo que fue introducida en la 8i.

se me ocurre que te hagas una función PL que te valide si el numero es mayor o menor y devuelva una especie de valor booleano.

algo como

Código SQL:
Ver original
  1. SELECT DECODE(funcion_compara_mayor(),TRUE,'ES MAYOR',FALSE,'ES MENOR') FROM dual;

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #4 (permalink)  
Antiguo 16/11/2010, 10:23
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 16 años, 4 meses
Puntos: 25
Respuesta: if en select...

wuuu, pos pos, gracias por la respuesta, ya pude solucionarlo:

Código:
SELECT ....
    CASE
        WHEN (A.dias_atraso>365) THEN '4 - PERDIDA'
        WHEN (A.dias_atraso>120) THEN '3 - DUDOSO'
        WHEN (A.dias_atraso>60) THEN '2 - DEFICIENTE'
        WHEN (A.dias_atraso>8) THEN '1 - PROBLEMAS POTENCIALES'
        ELSE '0 - NORMAL'
        END AS CATEGORIA
FROM ...
__________________
blog: hector2c.wordpress.com
email: [email protected]

Etiquetas: select
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:47.