logo

MySQL IFNULL()

Esta sección le ayuda a aprender sobre la función MySQL IFNULL(). La función IFNULL es parte de la función de flujo de control de MySQL utilizada para manejar valores NULL.

La función IFNULL acepta dos expresiones, y si la primera expresión es no nulo , devuelve los primeros argumentos. Si la primera expresión es nulo , devuelve el segundo argumento. Esta función devuelve un valor de cadena o numérico, según el contexto donde se utiliza.

Sintaxis

Podemos utilizar la función IFNULL con la siguiente sintaxis:

 IFNULL (Expression1, Expression2) 

Devuelve expresión1 cuando la expresión1 no es nula. De lo contrario, devolverá la expresión2.

Parámetros

Parámetro Requisito Descripciones
Expresión 1 Requerido Esta expresión se utiliza para comprobar si es NULL o no.
Expresión 2 Requerido Regresará cuando la expresión 1 sea NULL.

Soporte de versión MySQL

La función IFNULL puede admitir las siguientes versiones de MySQL:

  • MySQL 8.0
  • MySQL 5.7
  • MySQL 5.6
  • MySQL 5.5
  • MySQL 5.1
  • mysql 5.0
  • mysql 4.1
  • mysql 4.0

Entendamos la función MySQL IFNULL() con los siguientes ejemplos. Podemos usar la función IFNULL con el SELECCIONAR declaración directamente.

Ejemplo 1

 SELECT IFNULL(0,5); 

En la función anterior, la declaración MySQL verifica la primera expresión. Si la primera expresión no es NULL, devolverá la primera expresión, que es cero.

Producción:

 0 

Ejemplo 2

 SELECT IFNULL('Hello', 'javaTpoint'); 

La declaración MySQL anterior verifica la primera expresión. Si la primera expresión no es NULL, devolverá la primera expresión, que es 'Hola' valor.

Producción:

 Hello 

Ejemplo 3

 SELECT IFNULL(NULL,5); 

La siguiente declaración de MySQL verifica la primera expresión. Si la primera expresión no es NULL, devolverá la primera expresión. De lo contrario, devolverá la segunda expresión, que es cinco (5).

Producción:

 5 

Ejemplo 4

Aquí vamos a crear una tabla. 'contactos_estudiantes' y realice la función IFNULL().

 CREATE TABLE `student_contacts` ( `studentid` int unsigned NOT NULL AUTO_INCREMENT, `contactname` varchar(45) NOT NULL, `cellphone` varchar(20) DEFAULT NULL, `homephone` varchar(20) DEFAULT NULL, ); 

Ahora, necesitas insertar datos en una tabla. Después de insertar los valores en la tabla, ejecute la siguiente consulta.

 SELECT contactname, cellphone, homephone FROM student_contacts; 

Mostrará el resultado que contiene todas las filas y columnas. Aquí podemos ver que algunos de los contactos tienen sólo un número de teléfono móvil o de casa.

MySQL IFNULL

En el resultado anterior, obtendremos el nombre de todos los contactos, el tiempo del teléfono celular y el número de teléfono residencial disponible o no. Entonces, en ese caso, la función IFNULL() juega un papel importante.

Ahora, ejecute la siguiente consulta MySQL. Esta declaración devuelve la teléfono de casa número si el celular es NULL.

 SELECT contactname, IFNULL(cellphone, homephone) phone FROM student_contact; 

Producción:

Cuando la declaración MySQL anterior se ejecute correctamente, dará el siguiente resultado.

MySQL IFNULL

Nota: Debe evitar el uso de la función IFNULL() en la cláusula WHERE porque esta función reduce el rendimiento de la consulta.