resumen: en este tutorial, aprenderá sobre la función PostgreSQL COALESCE que devuelve el primer argumento no nulo. Aprenderá cómo aplicar esta función en la instrucción SELECT para manejar valores nulos de manera efectiva.
PostgreSQL COALESCE function syntax
la sintaxis de la funciónCOALESCE
es la siguiente:
Code language: SQL (Structured Query Language) (sql)
la función COALESCE
acepta un número ilimitado de argumentos. Devuelve el primer argumento que no es null., Si todos los argumentos son null, la función COALESCE
devolverá null.
la función COALESCE
evalúa los argumentos de izquierda a derecha hasta que encuentra el primer argumento no nulo. No se evalúan todos los argumentos restantes del primer argumento no nulo.
la función COALESCE
proporciona la misma funcionalidad que la función NVL
o IFNULL
proporcionada por SQL-standard. MySQL tiene la función IFNULL, mientras que Oracle proporciona la función NVL
.,
Vea los siguientes ejemplos:
Code language: SQL (Structured Query Language) (sql)
Code language: SQL (Structured Query Language) (sql)
a menudo utilizamos la etiqueta COLAESCE
función de sustituir un valor predeterminado para los valores nulos cuando nos consultan los datos. Por ejemplo, queremos mostrar el extracto de un post de blog, si no se proporciona el extracto, podemos usar los primeros 150 caracteres del contenido del post., Para lograr esto, podemos utilizar la etiqueta COALESCE
función:
Code language: SQL (Structured Query Language) (sql)
PostgreSQL se UNEN ejemplo
echemos un vistazo a un ejemplo del uso de COALESCE
función. Primero, creamos una tabla llamada items usando la instrucción CREATE TABLE de la siguiente manera:
Code language: SQL (Structured Query Language) (sql)
hay cuatro campos en la tabla items
:
- id: la clave principal que identifica el elemento en la tabla items.
- producto: el nombre del producto.
- precio: el precio del producto.,
- descuento: el descuento del producto.
en segundo lugar, insertamos algunos registros en la tabla de artículos utilizando la instrucción INSERT de la siguiente manera:
En tercer lugar, consultamos los precios netos de los productos utilizando la siguiente fórmula:
Code language: SQL (Structured Query Language) (sql)
Code language: SQL (Structured Query Language) (sql)
Si observa la cuarta fila, notará que el precio neto del producto D
es nulo, lo que parece no ser correcto., El problema es que el descuento del producto D
es null, por lo tanto cuando tomamos el valor null para calcular el precio neto, PostgreSQL devuelve null.
a La obtener el precio correcto, tenemos que asumir que si el descuento es nulo, cero., Entonces podemos usar la etiqueta COALESCE
función como sigue:
Code language: SQL (Structured Query Language) (sql)
Ahora el precio neto del producto D
es 500
debido a que usamos cero en lugar de un valor nulo cuando se calculó el precio neto.
además de usar la función COALESCE
, puede usar la expresión CASE para manejar los valores null en este caso. Consulte la siguiente consulta que utiliza la expresión CASE
para obtener el mismo resultado anterior.,
Code language: SQL (Structured Query Language) (sql)
en la consulta anterior decimos que si el descuento es nulo entonces use cero (0) de lo contrario use el valor de descuento en la expresión que calcula el precio neto.
en términos de rendimiento, COALESCE
la función y la expresión CASE son las mismas. Preferimos la función COALESCE
que la expresiónCASE
porque la funciónCOALESCE
hace que la consulta sea más corta y fácil de leer.
en este tutorial, ha aprendido cómo usar la función COALESCE
para sustituir valores nulos en la consulta.,
- ¿Fue útil este tutorial ?
- YesNo
Leave a Reply