Algumas pessoas erroneamente tendem a pensar que NULL é zero ou vazio. Em fato, NULL não é nenhum destes. NULL é literalmente um valor desconhecido ou indeterminado.

O efeito desta natureza indeterminada de um valor NULL é que ele não pode ser usado em cálculos ou em Comparação.

A lista abaixo, contém algumas regras importantes a serem lembradas sobre o comportamento de valores NULL.

  • Um valor NULL não pode ser atribuído a uma coluna definida como NOT NULL
  • Valores NULL não são iguais. ?? um erro freqüente comparar duas colunas que contém NULL e esperar que os valores sejam iguais.
    (Uma coluna NULL pode ser identificada em cláusulas WHERE ou em expressão boleana usando frases como “value IS NULL” e “value IS NOT NULL”.)
  • Uma coluna contendo valor NULL é ignorada em cálculos de valores agregados como AVG, SUM ou MAX.
  • Quando colunas contendo valor NULL em uma condição GROUP BY de uma consulta, o resultado irá conter linhas para estes valores NULL.
  • JOIN entre tabelas, em que uma condição JOIN contém valores e outro contém NULL, são controlados pelas regras de “OUTER JOIN”.

Referências

Bookmark and Share: