Filtrar los NULL en SQL Server

Hoy veremos como trabajar con los NULL

Como siempre con un pequeño ejemplo acompañado de su código y sus capturas veremos como trabajar con campos con valores «NULL»

Creando una tabla de ejemplo

IF EXISTS(SELECT 1 FROM sys.tables WHERE object_id = OBJECT_ID('myTable'))
BEGIN;
    DROP TABLE [myTable];
END;
GO

CREATE TABLE [myTable] (
    [myTableID] INTEGER NOT NULL IDENTITY(1, 1),
    [nombre] VARCHAR(255) NULL,
    [zona] VARCHAR(MAX) NULL,
    PRIMARY KEY ([myTableID])
);
GO

INSERT INTO myTable([nombre],[zona]) VALUES('Levi','MZA'),('Lars','MZA'),('Lee','CBA'),('Tarik',NULL),('Herman',NULL),('Allen',NULL),('George',NULL),('Ciaran',NULL),('Eagan',NULL),('Drake',NULL);

Resultado del script

Esto nos creará una tabla con la siguiente información:

select * from myTable

trabajando con NULL en SQL Server

Filtrando de manera correcta los NULLs

select * from myTable where zona=NULL
--Versus
select * from myTable where zona IS NULL

Este pequeño ejemplo demuestra como filtrar los NULL mediante el operador IS

filtando valores NULL en SQL ServerEl segundo ejemplo es como debemos filtrar los campos con valores NULL

Para terminar con el ejemplo, si tuviésemos que buscar los registros cuyo columna ZONA no contiene valores nulos (NOT NULL). Para ello podríamos realizar lo siguiente:

select * from myTable where zona is NOT NULL

 

2 comentarios

Dejar un comentario

¿Quieres unirte a la conversación?
Siéntete libre de contribuir!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.