Esta publicación tiene como objetivo mostrarle cómo usar la función decode () en las consultas de Oracle. La función decode () le permite introducir la lógica integrada if-then-else en una consulta de Oracle.
Sintaxis de función, parámetros y valor de retorno
El siguiente fragmento de código denota la función de la función decode () en Oracle:
Decodificación (expresión, búsqueda, resultado [, búsqueda, resultado] ... [, predeterminado]);Dónde:
Uso de la función de ejemplo
El siguiente ejemplo muestra un uso básico de la función en la función decode ():
Seleccione Decode (10, 10, 'Verdadero') de Dual;La función realiza una verificación condicional como se muestra en lo siguiente:
Si 10 = 10 entoncesEsto debería devolver verdadero como se muestra en lo siguiente:
Decodificación (10,10, 'verdadero') |Si la condición es falsa, la función devuelve nulo como se muestra en lo siguiente:
Seleccione Decode (10, 11, 'Verdadero') de Dual;Dado que la condición es falsa, la función devuelve nula en este caso.
Podemos incluir un valor de retorno si la condición es falsa como se muestra en lo siguiente:
Seleccione Decode (10, 11, 'Verdadero', 'Falso') de Dual;Esto debería volver de la siguiente manera:
Decode (10,11, 'verdadero', 'falso') |También podemos comparar el primer argumento con una lista de argumentos como se muestra en lo siguiente:
Seleccione Decode (1, 2, 'One', 1, 'One') de Dual;En este caso, la función compara el primer argumento, con el valor de 1, con el segundo argumento. Si es igual, la función devuelve el tercer argumento. De lo contrario, compara el valor con el cuarto argumento y devuelve el quinto argumento como verdadero.
Resultado:
Decode (1,2, 'One', 1, 'One') |También podemos definir un valor de retorno si no se encuentra ninguna coincidencia.
Seleccione Decode (5, 2, 'One', 1, 'One', 'El valor no debe ser ni 1 o 2') de Dual;Resultado de ejemplo:
Decode (5,2, 'One', 1, 'One')El valor no debe ser ni 1 o 2 |
Conclusión
Esta publicación cubrió los conceptos básicos de trabajar con la función Decode () de Oracle para manejar declaraciones IF-Else más complejas en las tablas de Oracle.