Área de Tecnologías de la Información y las Comunicaciones Aplicadas
Área de Tecnologías de la Información y las Comunicaciones Aplicadas Universidad de Murcia
Área de Tecnologías de la Información y las Comunicaciones Aplicadas
ATICA arrow Consultoria arrow DBconnector arrow SQL - CASE
24.05.2012
 
 
SQL - CASE Imprimir E-mail

Desde Oracle 9i, la expresión CASE permite utilizar la lógica IF-THEN-ELSE en sentencias SQL sin tener que invocar procedimientos, siendo por tanto mucho más potente que la función DECODE.

case when x = y then a else b end

case when x < y then a when x = y then b else c end

case XYZ when 'foo' then 'moo' else 'bar' end

Ejemplos:

SELECT ename, empno,
   (CASE deptno
      WHEN 10 THEN 'Accounting'
      WHEN 20 THEN 'Research'
      WHEN 30 THEN 'Sales'
      WHEN 40 THEN 'Operations'
      ELSE 'Unknown'
    END) department
FROM emp
ORDER BY ename;


SELECT ename, empno,
   (CASE
      WHEN sal < 1000 THEN 'Low'
      WHEN sal BETWEEN 1000 AND 3000 THEN 'Medium'
      WHEN sal > 3000 THEN 'High'
      ELSE 'N/A'
    END) salary
FROM emp
ORDER BY ename;

Referencias:



			
Última modificación ( 09.07.2010 )
 
Área de Tecnologías de la Información y las Comunicaciones Aplicadas
Volver al incio del documento Volver al inicio del documento
Área de Tecnologías de la Información y las Comunicaciones Aplicadas