Declaração do Caso Oracle

Declaração do Caso Oracle
A instrução CASE é uma poderosa expressão condicional no Oracle que permite ao usuário executar diferentes lógicas condicionais. A declaração do caso pode melhorar o desempenho da consulta e economizar tempo definindo várias condições em uma consulta em vez de múltiplas consultas condicionais. Com a ajuda de uma declaração de caso, o usuário pode definir várias condições e suas declarações correspondentes para executar, quando a condição é verdadeira. Se nenhuma das condições declaradas for verdadeira, o bloco padrão será invocado.

Este guia explicará:

  • Como usar uma declaração de caso simples no Oracle?
  • Como usar a declaração de casos Oracle em uma cláusula onde?
  • Como usar a declaração de casos Oracle em uma função agregada?

Como usar uma declaração de caso simples no Oracle?

Para usar um simples CASO declaração no Oracle, um “QUANDO”A cláusula pode ser usada para uma condição com um“ENTÃO“Cláusula para uma saída correspondente. A saída padrão pode ser adicionada usando o “OUTRO"Cláusula. No caso de várias condições, múltiplos “QUANDO" e "ENTÃO"Cláusulas podem ser usadas. Vamos passar para a sintaxe da declaração do caso:

CASO
Quando [condenação] então [resultado]
Quando [condição] então [resultado]
..
Quando [condição] então [resultado]
Else [padrão-resulto]
FIM

Exemplo 1: declaração de caso simples

Vamos ver um exemplo de uma declaração de caso simples, verificando o “status”Coluna na“ordens" mesa:

Selecione Order_id, Customer_id, Order_date,
CASO
Quando status = 'enviado' então ' -> pedido enviado'
Quando status = 'pendente' então ' -> ordem pendente'
Else ' -> ordem cancelada'
Termine como status
De ordens;

Saída

A saída mostra que o resultado foi impresso de acordo com a declaração de caso especificada.

Exemplo 2: declaração de casos usando sintaxe abreviada

Uma declaração de caso também pode ser escrita na sintaxe abreviada que omite a expressão após a palavra -chave do caso e usa diretamente o nome da coluna, e.g., ““status”:

Selecione Order_id, Customer_id, Order_date,
Status do caso
Quando 'enviado' então ' -> pedido enviado'
Quando 'pendente' então ' -> ordem pendente'
Else ' -> ordem cancelada'
Termine como status
De ordens;

Saída

A saída exibiu o mesmo resultado do exemplo acima.

Como usar uma declaração de casos Oracle em uma cláusula onde?

O "ONDE”A cláusula é utilizada para filtrar os dados. A declaração do caso Oracle pode ser usada no “ONDE”Cláusula para o filtro condicional dos dados. O exemplo é dado abaixo:

Selecione Product_id, Warehouse_id, Quantidade
De inventários
ONDE
CASO
Quando quantidade> 200 então 1
Else 0
Fim = 1;

No código acima, o “OS INVENTÁRIOS”Os dados da tabela são filtrados de acordo com a condição especificada como quantidade valor maior que 200.

Saída

A saída mostra que as linhas com uma quantidade maior que 200 foram impressas.

Como usar uma declaração de casos Oracle em uma função agregada?

O funções agregadas são utilizados para calcular o conjunto de valores e recuperar um único valor. A instrução Oracle Case pode ser usada em uma função agregada para executar o cálculo condicional no conjunto de valores. O exemplo é dado abaixo:

Selecione Order_id, Item_id, Product_id, Unit_price,
Soma (caso
Quando Unit_price> = 470 e então a quantidade
Else 0
Fim) como quantidade
De order_items
Grupo por order_id, item_id, product_id, unit_price;

No exemplo acima, a condição foi aplicada no “PREÇO UNITÁRIO”Coluna do“ITENS DE ORDEM" mesa.

Saída

A saída mostra que se o PREÇO UNITÁRIO o valor foi maior que 470 então o valor de quantidade foi mostrado de outra forma que mostrou zero (0).

Conclusão

A declaração do caso Oracle é usada para definir várias condições, juntamente com sua declaração específica para executar. Quando uma condição é verdadeira, as declarações associadas a essa condição serão executadas, caso contrário, o bloco padrão será executado. Também pode ser usado no “ONDE”Cláusula para filtrar condicionalmente os dados, bem como nas funções agregadas para executar cálculos condicionais no conjunto de valores. O guia forneceu uma explicação detalhada com exemplos de como usar as declarações do caso Oracle.