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 unir una tabla a sí misma con Self Join de SQL Server

Cómo unir una tabla a sí misma con Self Join de SQL Server

Resumen: en este tutorial, aprenderás a utilizar Self Join de SQL Server para unir una tabla a sí misma.

Ver artículo completo
Cómo definir un índice agrupado en una tabla SQL Server con CREATE CLUSTERED INDEX

Cómo definir un índice agrupado en una tabla SQL Server con CREATE CLUSTERED INDEX

Resumen: en este post, aprenderás sobre el índice agrupado de SQL Server y cómo definir un índice agrupado para una tabla.

Ver artículo completo
Cómo ordenar el resultado de una consulta con Order By en SQL Server

Cómo ordenar el resultado de una consulta con Order By en SQL Server

En este tutorial, aprenderá a usar la cláusula ORDER BY de SQL Server para ordenar los resultados de una consulta por una o más columnas.

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 ;