DECODE

DECODE compara uma expressão a uma ou mais strings de pesquisa, uma a uma.

Se expr for igual a pesquisa, então DECODE retornará o resultado correspondente. Se não houver correspondência, então DECODE retornará default. Se você omitir default, então DECODE retornará nulo.

Valor de Retorno

Tipo de dados do primeiro argumento de resultado

Sintaxe

DECODE(expr, search, result
          [, search, result ]...
          [, default ]
      )

Argumentos

expr é uma expressão que será comparada a uma ou mais strings de pesquisa.

pesquisa é uma string que será pesquisada para obter uma correspondência de expr.

resultado é o valor de retorno quando expr corresponde à string de pesquisa correspondente.

default é o valor de retorno quando expr não corresponde a nenhuma das strings de pesquisa. Se default for omitido, então DECODE retornará nulo.

Os argumentos podem ser qualquer tipo numérico ou de caracteres. Dois nulos são equivalentes. Se expr for nulo, DECODE retornará o resultado da primeira pesquisa que também seja nulo.

O número máximo de componentes, incluindo expr, pesquisas, resultados e default, é 255.

Exemplo

DECODE(sysdate, '21-JUN-06', 'Solstício de Verão', '21-DEZ-06', 'Solstício de Inverno', 'Tenha um bom dia!')

retorna esses valores:

Solstício de Verão em 21 de junho de 2006,
Solstício de Inverno em 21 de dezembro de 2006 e
Tenha um bom dia! em todos os outros dias.