Middle
Como tratar valores nulos em SQL e evitar erros ao contar valores únicos?
sobes.tech IA
Resposta da IA
Em SQL, ao contar valores únicos, é importante tratar corretamente NULL, pois NULL não é igual a nenhum valor, incluindo a si mesmo.
Para evitar erros e obter um resultado correto:
- Use
COUNT(DISTINCT coluna)— ignora valores NULL. - Se precisar considerar NULL como um valor único separado, pode substituir NULL por um valor especial usando
COALESCE.
Exemplo:
-- Contagem de valores únicos sem considerar NULL
SELECT COUNT(DISTINCT nome_coluna) FROM nome_tabela;
-- Contagem de valores únicos considerando NULL como um valor separado
SELECT COUNT(DISTINCT COALESCE(nome_coluna, 'SUBSTITUICAO_NULL')) FROM nome_tabela;
Onde 'SUBSTITUICAO_NULL' é qualquer valor que não apareça na coluna, por exemplo '__NULL__'. Isso permite contar NULL como um elemento único separado.