Función Oracle Coalesce

Función Oracle Coalesce
En esta publicación, aprenderemos cómo trabajar con la función Coalese () para obtener el primer valor no nulo en una lista.

Introducción a la función Oracle Coalese ()

La función Coalese () le permite especificar una lista de argumentos y devolver el primer argumento no nulo del conjunto proporcionado.

Podemos expresar la sintaxis de la función de la siguiente manera:

Coalesce (expresión1, expresión2, ..., expresión);

En la sintaxis proporcionada, la expresión1, la expresión2, ..., la expresión de la expresión representa las expresiones que se evaluarán para valores nulos.

Una vez que la función encuentra el primer valor no nulo en la lista de expresiones proporcionadas, devuelve ese valor. Sin embargo, la función devuelve nula si todas las expresiones son nulas.

Tome este ejemplo que demuestre el uso básico de la función Coalese () en las bases de datos Oracle:

Seleccione Coalesce (NULL, NULL, 1, 2, 3) como fuera de doble;

En el ejemplo anterior, utilizamos la función CouneSce () con cinco valores de entrada o expresiones. Dado que los dos primeros valores son nulos, la función devuelve el primer valor después del que es el entero 1.

Salida de ejemplo:

Tome este segundo ejemplo que demuestra el valor de retorno si todas las expresiones son nulas.

Seleccione Coalesce (NULL, NULL, NULL) como fuera de doble;

La función devuelve nulo como se muestra en lo siguiente:

La función CoaleseSce () devuelve el mismo tipo de datos que el tipo de entrada si todos los valores son del mismo tipo.

Sin embargo, si las expresiones de entrada son de diferentes tipos de datos, la función intenta realizar una conversión de tipo implícita en todas las expresiones al tipo de datos de la primera expresión no nula.

Si la conversión falla, el motor de la base de datos devuelve un error.

Un ejemplo es como se demuestra en lo siguiente:

Seleccionar fusele (nulo, nulo, nulo, 1, 'b') como fuera de doble;

En este caso, las expresiones son de diferentes tipos de datos. Dado que la primera expresión no nula es un número, la función intenta convertir todas las expresiones al tipo de número que falla ya que el carácter "B" no puede convertirse en un número.

El error resultante es como se muestra:

[42000] [932] ORA-00932: Tipos de datos inconsistentes: el número esperado obtuvo Char

Es bueno tener en cuenta que la función utiliza la evaluación de cortocircuito. Esto significa que la función se detiene al encontrar la primera expresión no nula. Por lo tanto, incluso si hay un error después de la primera expresión no nula, no se registrará ya que la función no lo evaluará.

Conclusión

En esta publicación, descubrió el trabajo y el uso de la función Oracle Coalese () para devolver el primer argumento no nulo en una expresión.