- Categorias:
NULLIFZERO¶
Retorna NULL se o argumento avalia para 0
; caso contrário, retorna o argumento.
Sintaxe¶
NULLIFZERO( <expr> )
Argumentos¶
expr
A entrada deve ser uma expressão que é avaliada como um valor numérico.
Retornos¶
Se o valor da expressão de entrada for 0
, isso retorna NULL. Caso contrário, isso retorna o valor da expressão de entrada.
O tipo de dados do valor de retorno é NUMBER(p, s)
(se a entrada for um ponto fixo) ou DOUBLE
(se a entrada for um ponto flutuante).
Para números de ponto fixo, os valores exatos de ‘p’ (precisão) e ‘s’ (escala) dependem da expressão de entrada. Por exemplo, se a expressão de entrada for 3,14159, então o tipo de dados do valor de saída será NUMBER(7, 5)
.
Exemplos¶
Os exemplos a seguir mostram a saída da função para vários valores de entrada:
SELECT NULLIFZERO(0); +---------------+ | NULLIFZERO(0) | |---------------| | NULL | +---------------+SELECT NULLIFZERO(52); +----------------+ | NULLIFZERO(52) | |----------------| | 52 | +----------------+SELECT NULLIFZERO(3.14159); +---------------------+ | NULLIFZERO(3.14159) | |---------------------| | 3.14159 | +---------------------+