Sobes.tech
Middle

Como trabalhar com NULL em SQL?

sobes.tech IA

Resposta da IA

No SQL, NULL significa ausência de valor e deve ser tratado de forma especial:

  • Comparações com NULL: Os operadores =, <> não funcionam com NULL como com um valor normal. Por exemplo, column = NULL sempre retorna FALSE.

  • Verificação de NULL: Use IS NULL ou IS NOT NULL para verificar a presença ou ausência de um valor.

  • Tratamento em agregados: Funções como COUNT(column) não consideram NULL, enquanto COUNT(*) conta todas as linhas.

  • Funções para substituir NULL: COALESCE(column, default_value) retorna o primeiro valor não-NULL da lista.

  • Junção de tabelas: Em JOIN, linhas com NULL em campos-chave podem não coincidir, o que afeta o resultado. Por exemplo, INNER JOIN excluirá essas linhas, enquanto LEFT JOIN as manterá com NULL nos campos da tabela unida.

Exemplo:

SELECT
  user_id,
  COALESCE(email, 'no-email@example.com') AS email_address
FROM users
WHERE last_login IS NOT NULL;

Aqui, substituímos NULL no campo email por um endereço padrão e selecionamos apenas usuários com uma data de último login conhecida.