Esse capitulo mostra as funções do Oracle.
Parte 1
NVL(Expressão1, Expressão2);
Ambos são necessários e caso a Expressão1 seja NULL retorna o a Expressão2;
DECODE(Expressão1, Expressão_Busca, Resultado);
Os dois primeiros são necessários e o terceiro é opcional. O Expressao_Busca e Resultado podem se repetir, o teste é simple, se Expressão1 for igual a Expressão_Busca assume o Resultado. Se o Resultado não for colocado, usa NULL como default. O tipo do retorno é um VARCHAR2. O DECODE é o mesmo que IF-THEN-ELSE.
CASE Expressão1
WHEN Condição1 THEN Resultado1
WHEN Condição2 THEN Resultado2
….
ELSE ResultadoFinal END
Para o CASE funcionar a Expressão1 é necessária e se for igual a Condição1 retorna o Resultado1. Retorna o primeiro que encontrar, caso não encontre ninguém retorna o ELSE que é opcional, se não existir retorna NULL.
Pode ser colocado um alias para a CASE se estiver em uma COLUNA SQL.
NULLIF(Expressão1, Expressão2);
Ambos os parametros são necessários. Se Expressão1 e Expressão2 são iguais retorna NULL, se não retorna Expressão1. O tipo do retorno é o mesmo que o comparado, se estiver comparando VARCHAR2, retorna VARCHAR2.
Exemplos:
Comentário:
No Exemplo: Select Nullif('Expressao2', 'Expressao1') From Dual;
Retornou Expressao2, mas falei na descrição que é Expressao1, ok? Aqui foi proposital, pois é a PRIMEIRA EXPRESSAO escrita, fiquem atentos.
Exercício:
1) O SQL: Select Distinct Nullif('SP', Col1) From Sigla_Estado;
Retorna quantas linhas?
a) 1
b) 2
c) 0
d) 5
Book: SQL Certified Expert Exam Guide, Steve O’Hearn pela Oracle Press
Link Book na Amazon
Att,
capin
Trackbacks / Pingbacks