Ir para conteúdo principal

Propagação de valores NULL em expressões

NESTA PÁGINA

Propagação de valores NULL em expressões

Os valores NULL se propagarão por meio de uma expressão de acordo com algumas regras lógicas e bastante razoáveis.

Funções

A regra geral é que as funções retornam NULL quando os parâmetros ficam fora do intervalo para o qual a função está definida.

Example:  

asin(2)

retorna

NULL

log(-5)

retorna

NULL

round(A,0)

retorna

NULL

Como resultado, as funções em geral retornam NULL quando qualquer um dos parâmetros necessários à avaliação é NULL.

Example:  

sin(NULL)

retorna

NULL

chr(NULL)

retorna

NULL

if(NULL, A, B)

retorna

B

if(True, NULL, A)

retorna

NULL

if(True, A, NULL)

retorna

A

A exceção à segunda regra são as funções lógicas para teste de tipo.

Example:  

isnull(NULL)

retorna

True (-1)

isnum(NULL)

retorna

False (0)

Operadores aritméticos e de caractere

Se NULL for encontrado em qualquer lado desses operadores, o resultado será NULL.

Example:  

A

+

NULL

retorna

NULL

A

-

NULL

retorna

NULL

A

/

NULL

retorna

NULL

A

*

NULL

retorna

NULL

NULL

/

A

retorna

NULL

0

/

NULL

retorna

NULL

0

*

NULL

retorna

NULL

A

&

NULL

retorna

A

Operadores relacionais

Se NULL for encontrado em qualquer lado dos operadores relacionais, serão aplicadas regras especiais.

Example:  

NULL

rel.op

NULL

retorna

NULL

A

<>

NULL

retorna

True (-1)

A

<

NULL

retorna

False (0)

A

<=

NULL

retorna

False (0)

A

=

NULL

retorna

False (0)

A

>=

NULL

retorna

False (0)

A

>

NULL

retorna

False (0)