Valor NULL SQL

Valores NULL são dados desconhecidos ausentes.

Por padrão, as colunas da tabela podem armazenar valores NULL.

Este capítulo explica os operadores IS NULL e IS NOT NULL.

Valor NULL SQL

Se uma coluna em uma tabela é opcional, podemos inserir novos registros ou atualizar registros existentes sem adicionar valores a essa coluna. Isso significa que o campo será salvo com o valor NULL.

A maneira de lidar com valores NULL é diferente dos outros valores.

NULL é usado como marcador para valores desconhecidos ou não aplicáveis.

Notas:Não podemos comparar NULL com 0; eles não são equivalentes.

Tratamento de valores NULL no SQL

Veja a tabela "Persons" abaixo:

Id Sobrenome PrimeiroNome Endereço Cidade
1 Adams John   Londres
2 Bush George Avenida Fifth Nova York
3 Carter Thomas   Pequim

Supondo que a coluna "Endereço" da tabela "Persons" seja opcional. Isso significa que se inserirmos um registro sem valor na coluna "Endereço", a coluna "Endereço" usará o valor NULL para salvar.

Então, como testamos valores NULL?

Não podemos usar operadores de comparação para testar valores NULL, como =, <, ou <>.

Devemos usar os operadores IS NULL e IS NOT NULL.

IS NULL do SQL

Como podemos escolher apenas os registros que têm valores NULL na coluna "Endereço"?

Devemos usar o operador IS NULL:

SELECT Sobrenome,PrimeiroNome,Endereço FROM Pessoas
WHERE Endereço IS NULL

Conjunto de resultados:

Sobrenome PrimeiroNome Endereço
Adams John  
Carter Thomas  

Dica:Sempre use IS NULL para encontrar valores NULL.

IS NOT NULL do SQL

Como podemos escolher os registros que não têm valores NULL na coluna "Endereço"?

Devemos usar o operador IS NOT NULL:

SELECT Sobrenome,PrimeiroNome,Endereço FROM Pessoas
WHERE Endereço IS NOT NULL

Conjunto de resultados:

Sobrenome PrimeiroNome Endereço
Bush George Avenida Fifth

Na próxima seção, vamos entender as funções ISNULL(), NVL(), IFNULL() e COALESCE().