Questão FC372951
Considere a expressão PL/SQL de um banco de dados Oracle 19 aberto e funcionando em condições ideais: CASE WHEN expr1 IS NOT NULL THEN expr1 ELSE expr2 END A função equivalente a e
Sistema de Gerenciamento de Banco de Dados (SGBD)
FCC · 2023
Considere a expressão PL/SQL de um banco de dados Oracle 19 aberto e funcionando em condições ideais:
CASE WHEN expr1 IS NOT NULL THEN expr1 ELSE expr2 END
A função equivalente a essa expressão é:
- COALESCE(expr1, expr2)
- CHR(expr1, expr2)
- COMPOSE(expr1, expr2)
- COLLATION(expr1, expr2)
- COLLECT(expr1, expr2)
Mostrar resposta e comentário
Gabarito
A
Comentário do professor
COALESCE(expr1, expr2) retorna o primeiro valor não nulo da lista de argumentos. Ou seja, avalia os parâmetros da esquerda para a direita e devolve o primeiro que não seja NULL.
Essa função é sinteticamente equivalente à expressão CASE dada:
\(CASE\;WHEN\;expr1\;IS\;NOT\;NULL\;THEN\;expr1\;ELSE\;expr2\;END = COALESCE(expr1, expr2)\).
Use COALESCE quando quiser tratar valores nulos de forma concisa — especialmente útil em SELECT, WHERE e cláusulas de projeção. Ela aceita mais de dois argumentos, retornando o primeiro não nulo entre todos.
Importante: a avaliação para o primeiro não nulo ocorre em ordem, portanto coloque primeiro o argumento que prefere priorizar.
Conteúdo do catálogo FC Concursos · Atualizado em