- Categorias:
IFNULL¶
Se expr1
for NULL, retorna expr2
, caso contrário, retorna expr1
.
- Aliases
Sintaxe¶
IFNULL( <expr1> , <expr2> )
Argumentos¶
expr1
Uma expressão geral.
expr2
Uma expressão geral.
Notas de uso¶
Se possível, passe em argumentos do mesmo tipo. Evite passar em argumentos de diferentes tipos.
Se um dos argumentos for um número, a função aplica a coerção aos argumentos de cadeia de caracteres não numéricos (por exemplo,
'a string'
) e argumentos de cadeia de caracteres que não são constantes do tipo NUMBER(18,5).Para argumentos de cadeia de caracteres numérica que não são constantes, se NUMBER(18,5) não for suficiente para representar o valor numérico, você deve converter o argumento em um tipo que possa representar o valor.
Qualquer uma das expressões pode incluir uma instrução
SELECT
contendo operadores definidos, tais comoUNION
,INTERSECT
,EXCEPT
eMINUS
. Ao utilizar os operadores do conjunto, certifique-se de que os tipos de dados sejam compatíveis. Para obter mais detalhes, consulte Notas de uso geral no tópico Operadores de conjuntos.
Detalhes do agrupamento¶
The collation specifications of all input arguments must be compatible.
The collation of the result of the function is the highest-precedence collation of the inputs.
Exemplos¶
SELECT a, b, IFNULL(a,b), IFNULL(b,a) FROM i; --------+--------+-------------+-------------+ a | b | ifnull(a,b) | ifnull(b,a) | --------+--------+-------------+-------------+ 0 | 5 | 0 | 5 | 0 | [NULL] | 0 | 0 | [NULL] | 5 | 5 | 5 | [NULL] | [NULL] | [NULL] | [NULL] | --------+--------+-------------+-------------+