Mostrando entradas con la etiqueta CASE. Mostrar todas las entradas
Mostrando entradas con la etiqueta CASE. Mostrar todas las entradas

lunes, 31 de octubre de 2016

CASE

Las expresiones CASE le permiten utilizar la lógica IF-THEN-ELSE en sentencias SQL sin llamar a procedimientos.

En una expresión CASE simple, Oracle Server busca el primer par WHEN ... THEN en el que expr sea igual a comparison_expr y devuelve return_expr. Si ninguno de los pares WHEN ... THEN cumplen esta condición y si existe una cláusula ELSE, Oracle Server devuelve else_expr. De lo contrario, Oracle Server devuelve un valor nulo. No puede especificar el literal NULL para todas las expresiones return_exprs
y
else_expr.


Todas las expresiones ( expr, comparison_expr y return_expr) deben ser del mismo tipo de datos, que puede ser CHAR, VARCHAR2, NCHAR o NVARCHAR2.


SELECT last_name, job_id, salary CASE job_id WHEN 'IT_PROG'  THEN  1.10*salary 
                                                                               WHEN 'ST_CLERK' THEN  1.15*salary 
                                                                               WHEN 'SA_REP'   THEN  1.20*salary 
                                                                               ELSE      salary END     "REVISED_SALARY" 
FROM   employees;





Share:

Archivo

Cual es el tema de mayor interes para ti?