SQL

Cómo usar los valores NULL y los operadores IS NULL y IS NOT NULL para probar si un valor es NULL

Estrada Web Group
jiestrada
Cómo usar los valores NULL y los operadores IS NULL y IS NOT NULL para probar si un valor es NULL

Resumen: en este tutorial, aprenderás sobre la lógica de los valores NULL en SQL Server. También aprenderás a usar los operadores IS NULL y IS NOT NULL para probar si un valor es NULL o no.

Valor NULL y la lógica de tres valores

En el mundo de las bases de datos, NULL se utiliza para indicar la ausencia de cualquier valor de datos. Por ejemplo, en el momento de registrar la información del cliente, el correo electrónico puede ser desconocido, por lo que se registra como NULL en la base de datos.

Normalmente, el resultado de una expresión lógica es TRUE o FALSE (VERDADERO o FALSO). Sin embargo, cuando NULL está involucrado en la evaluación lógica, el resultado es DESCONOCIDO. Esto se denomina lógica de tres valores: TRUE, FALSE o UNKNOWN (VERDADERO, FALSO y DESCONOCIDO).

Los resultados de las siguientes comparaciones son UNKNOWN:

NULL = 0
NULL <> 0
NULL > 0
NULL = NULL

NULL es igual a nada, incluso NULL no es igual a NULL porque cada NULL podría ser diferente.

IS NULL

Consultar la siguiente tabla de clientes de la base de datos de muestra.

validar si es un valor NULL en sql server

La siguiente declaración SELECT encuentra los clientes que no tienen un número de teléfono registrado en la tabla de clientes:

SELECT
    customer_id,
    first_name,
    last_name,
    phone
FROM
    sales.customers
WHERE
    phone = NULL
ORDER BY
    first_name,
    last_name;

La consulta devolvió un conjunto de resultados vacío.

La cláusula WHERE devuelve filas que hacen que se evalúe como TRUE. Sin embargo, la siguiente expresión se evalúa como DESCONOCIDA.

phone = NULL;

Por lo tanto, obtiene un conjunto de resultados vacío.

Para probar si un valor es NULL o no, siempre usa el operador IS NULL.

SELECT
    customer_id,
    first_name,
    last_name,
    phone
FROM
    sales.customers
WHERE
    phone IS NULL
ORDER BY
    first_name,
    last_name;

SQL SERVER IS NULL

La consulta devolvió los clientes que no tienen la información del teléfono.

Como puedes adivinar, para verificar si un valor no es NULL, puede usar el operador IS NOT NULL.

La siguiente consulta devuelve clientes que tienen información de teléfono:

SELECT
    customer_id,
    first_name,
    last_name,
    phone
FROM
    sales.customers
WHERE
    phone IS NOT NULL
ORDER BY
    first_name,
    last_name;

IS NOT NULL DE SQL SERVER

En este tutorial, has aprendido acerca de la lógica de tres valores NULL y cómo probar si un valor es NULL o no.

 

Compartir artículo:

Más artículos geniales

Cómo cambiar el nombre de una columna de una tabla de SQL Server

Cómo cambiar el nombre de una columna de una tabla de SQL Server

Resumen: en este tutorial, aprenderás a cambiar el nombre de una columna de una tabla de SQL Server.

Ver artículo completo
¿Cómo unir o concatenar dos o más columnas separadas por un espacio en SQL con CONCAT_WS?

¿Cómo unir o concatenar dos o más columnas separadas por un espacio en SQL con CONCAT_WS?

En este tutorial, aprenderá a usar la función CONCAT_WS() de SQL Server para unir varias cadenas junto con un separador, esta función solo esta disponible en SQL Server 2017 en adelante.

Ver artículo completo
¿Cómo obtener la cantidad de registros en SQL Server con la función COUNT()?

¿Cómo obtener la cantidad de registros en SQL Server con la función COUNT()?

En este tutorial, aprenderás a usar la función COUNT() de SQL Server para obtener la cantidad de elementos en un conjunto.

Ver artículo completo

Manténgase actualizado

Obtenga excelente contenido en su bandeja de entrada todas las semanas.
Solo contenido excelente, no compartimos su correo electrónico con terceros.
Subir al inicio de la pantalla ;