PostgreSQL se else

PostgreSQL se else

Em muitas linguagens de programação, a declaração if-else é uma maneira comum de implementar condições e tomar decisões, dada a premissa. Com base em uma condição, a declaração if-else decide qual código executar.

PostgreSQL também vem com sua versão da declaração if-else. Neste guia, daremos uma olhada no Se mais Declaração no PostgreSQL.

Se mais em postgresql

Existem três formas de declarações IF no PostgreSQL:

  • SE
  • Se então mais
  • Se então elsif

O SE A declaração determina quais declarações a executar com base no resultado de uma expressão booleana.

A estrutura básica do SE A declaração é a seguinte:

SE ENTÃO
;
FIM SE;

No caso de Se então mais, A estrutura é a seguinte:

SE ENTÃO
;
OUTRO
;
FIM SE;

Para Se então elsif, A estrutura é a seguinte:

SE ENTÃO
;
..
SE ENTÃO
;
OUTRO
;
FIM SE;

Pré -requisitos

Para executar as etapas demonstradas neste guia, você precisará dos seguintes componentes:

  • Um sistema Linux adequadamente configurado. Saiba mais sobre como instalar o Ubuntu no VirtualBox.
  • PostgreSQL instalado e configurado. Confira a instalação do PostGresql no Ubuntu.

Implementando declarações se else

Nesta seção, mostraremos alguns exemplos de implementação do Se mais Declarações que fomos até agora. A maioria dos exemplos não requer nenhum conjunto de dados anterior.

Exemplo 1 - Usando se

O exemplo apresentará um programa simples: encontrar o maior de dois números. Declararemos duas variáveis, atribuiremos valores a elas, compararemos seus valores e saquearemos com base no resultado da comparação.

Fazer $$
DECLARAR
var_a smallInt: = 65;
var_b smallInt: = 99;
COMEÇAR
Se var_a> var_b, elevá -lo 'var_a> var_b';
FIM SE;
Se var_a < var_b THEN RAISE NOTICE 'var_a < var_b';
FIM SE;
Se var_a = var_b, aumente o aviso 'var_a = var_b';
FIM SE;
Fim $$;

Aqui,

  • Estamos comparando o valor de dois Smallint variáveis ​​var_a e var_b.
  • Após comparação, estamos executando um Levantar aviso declaração para declarar o resultado da comparação.

Exemplo 2 - Usando se mais

Enquanto o exemplo anterior funciona bem, ele vem com uma pequena penalidade de desempenho. Ele testa as condições para cada SE declaração, consumindo poder de processamento adicional.

Por exemplo, se var_a> var_b é verdadeiro, Então não há necessidade de processar ainda mais se as declarações, certo? Temos que testar ainda mais se var_a> var_b retornar FALSO. O mesmo vale para os outros níveis de declarações if.

Vamos atualizar o código usando Se mais declaração:

Fazer $$
DECLARAR
var_a smallInt: = 65;
var_b smallInt: = 99;
COMEÇAR
Se var_a> var_b, elevá -lo 'var_a> var_b';
Caso contrário, se var_a < var_b THEN RAISE NOTICE 'var_a < var_b';
Caso contrário, se var_a = var_b e aumente o aviso 'var_a = var_b';
FIM SE;
FIM SE;
FIM SE;
Fim $$;

Aqui,

  • O programa sempre entrará no primeiro SE declaração.
  • O segundo e o terceiro SE As declarações serão executadas apenas se as anteriores SE declarações são FALSO.

Exemplo 3 - Usando se Elsif

Podemos otimizar ainda mais o programa usando Se elsif declaração. Confira o código:

Fazer $$
DECLARAR
var_a smallInt: = 65;
var_b smallInt: = 99;
COMEÇAR
Se var_a> var_b, elevá -lo 'var_a> var_b';
Elsif var_a < var_b THEN RAISE NOTICE 'var_a < var_b';
Elsif var_a = var_b e aumente 'var_a = var_b';
FIM SE;
Fim $$;

Aqui, escrevemos apenas uma única declaração se, reduzindo assim a necessidade de adicional FIM SE declarações.

Conclusão

Neste guia, demonstramos várias formas de Se mais Declarações encontradas no PostgreSQL. Também mostramos seu uso usando um exemplo simples.

PostgreSQL também vem com uma tonelada de funções predefinidas para consultas mais eficientes. De fato, também podemos construir consultas mais complexas usando sub-questões.

Interessado em aprender mais sobre o PostgreSQL? Confira a subcategoria PostgreSQL, abundante com guias sobre vários aspectos do PostgreSQL.