Utilizamos cookies propias y de terceros. [Más información sobre las cookies].
Política de cookies
Proyecto AjpdSoft

· Inicio
· Buscar
· Contactar
· Cookies
· Descargas
· Foros
· Historia
· Nosotros
· Temas
· Top 10
· Trucos
· Tutoriales
· Wiki
DECODE (campo, valor1, devuelto1)


Sintaxis
DECODE (campo, valor_a_comprobar1, valor_devuelto_si_coincide1,
valor_a_comprobar2, valor_devuelto_si_coincide2, ..., valor_en_caso_contrario)


Esta función es "equivalente" a la función condicional "if" de programación.

Devuelve el segundo valor si se cumple el primero, sirve para cambiar valores (en pares). Por ejemplo, si tenemos un campo con el identificativo del país y queremos que aparezca el nombre del país haremos lo siguiente:

Select DECODE (codigopais, 'ES', 'España', 'DE', 'Alemania', 'FR', 'Francia', 'DK', 'Dinamarca', 'UK', 'Reino Unido', 'IT', 'Italia', 'USA', 'Estados Unidos', 'CH', 'Chile', codigopais)
from paises


En este caso, el SELECT mostrará el nombre del país según su código y, si no existe equivalencia, mostrará el código (por ello hemos puesto al final del DECODE 'codigopais'.

Otro ejemplo:

SELECT exp.EXPEDIENTE, exp.PAC, DECODE(TRIM(exp.CUELGA), '', '-1', exp.CUELGA) CUELGA,
exp.IMPORTE_OBRA, FROM EXPEDIENTE_PAC exp
WHERE TRIM(exp.EXPEDIENTE) = 'expediente de prueba'


En este caso, para la columna 'Cuelga' mostrará el valor '-1' si el campo 'exp.CUELGA' está vacío, en caso contrario mostrará el valor del campo 'exp.CUELGA'.

Funciones Oracle

Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A