Use NULLIF para substituir seletivamente um valor específico nos seus dados por NULL. Isto pode ser útil em situações em que um determinado valor representa dados em falta ou inválidos e quer marcá-lo explicitamente como NULL para análise ou processamento adicionais.
Exemplos de utilização
Substitua -1 no campo Discount por NULL.
Sintaxe
NULLIF( input_expression, expression_to_match )
Parâmetros
input_expression
A expressão a avaliar. Pode usar qualquer expressão válida como input_expression.
expression_to_match
NULLIF compara expression_to_match com input_expression. Se os dois forem iguais, NULLIF devolve nulo. Caso contrário, devolve o input_expression. Pode usar qualquer expressão válida como expression_to_match.
Exemplo
Suponhamos que quer calcular o desconto médio concedido aos seus clientes. A sua aplicação representa "sem desconto" como -1. A fórmula AVG(Discount) vai contar -1 e devolver um resultado incorreto. Para evitar esta situação, pode converter esses -1s em NULLS. Para o fazer, crie um novo campo denominado, por exemplo, Desconto com nulos :
NULLIF(Discount, -1)
Esta fórmula pode ser lida como "Se o campo Desconto for -1, devolva nulo. Caso contrário, devolva Desconto".
Em seguida, pode calcular o desconto médio ignorando as encomendas sem desconto:
AVG(Discount With Nulls)