Declaração de Caso Oracle PL/SQL

Declaracao De Caso Oracle Pl Sql



O fluxo de controle é um dos blocos de construção primários na programação. Ele define a ordem na qual os vários blocos de código são executados em um programa.

Como a maioria das linguagens de programação, a linguagem Oracle PL/SQL fornece várias instruções de fluxo de controle, como IF-THEN, CASE, FOR, WHILE, etc.







Neste post, aprenderemos como trabalhar com a instrução CASE em PL/SQL para introduzir o fluxo de controle em nossas consultas Oracle.



Introdução à Declaração CASE

A instrução CASE permite definir uma sequência de instruções. A instrução case então seleciona uma sequência para executar com base na condição especificada.



Pense nisso como uma maneira mais eficiente de declarar um conjunto de blocos if-then, preservando a legibilidade.





Podemos expressar a sintaxe da instrução CASE no Oracle conforme mostrado a seguir:

CASO
QUANDO condição1 ENTÃO resultado1
QUANDO condição2 ENTÃO resultado2
...
OUTRO resultado
FIM

A instrução CASE avalia cada condição nas cláusulas WHEN nesta sintaxe.



Se a instrução encontrar uma instrução correspondente, ela retornará o resultado correspondente. No entanto, em alguns casos, a instrução case pode não encontrar uma condição correspondente. Nesse cenário, a instrução executa o resultado definido no bloco ELSE.

NOTA : O bloco ELSE é opcional. Se indisponível, o mecanismo de banco de dados usa a seguinte sintaxe:

OUTRO:
AUMENTE CASE_NOT_FOUND;

Isso permite que o mecanismo de banco de dados levante uma exceção e pause a execução quando não houver nenhuma condição correspondente.

Exemplo 1: Exemplo Básico de Instrução CASE

Este exemplo mostra um exemplo básico de uso do operador case no Oracle:

declarar
número de idade;
entrada char(10);
começar
idade:= 24;
idade do caso
quando 17 então
entrada := 'denined';
quando 24 então
entrada := '9.99';
quando 45 então
entrada :='15.99';
outro
entrada := 'não permitido';
caso final;
DBMS_OUTPUT.PUT_LINE(entrada);
fim;

A ilustração fornecida deve testar qualquer condição correspondente e retornar o status correspondente. Por exemplo, como a condição correspondente é 24, a cláusula retorna da seguinte forma:

9,99

Exemplo 2: instrução CASE com uma tabela de banco de dados

Este exemplo usa a instrução case com uma tabela de banco de dados.

selecione primeiro_nome, sobrenome, salário,
caso
quando o salário é  2500, então 'Alto'
senão 'Desconhecido'
terminar como salario_status
de EMPREGADOS;

A consulta fornecida usa a instrução case para testar a faixa salarial da tabela dos funcionários.

O valor resultante é mostrado a seguir:

Conclusão

Nesta postagem, você aprendeu a usar a instrução case do Oracle para testar as várias condições e executar uma ação se uma for verdadeira.