PostgreSQL si más

PostgreSQL si más

En muchos lenguajes de programación, la declaración if-else es una forma común de implementar condiciones y tomar decisiones dada la premisa. Basado en una condición, la declaración if-else decide qué código ejecutar ejecutar.

PostgreSQL también viene con su versión de la declaración if-else. En esta guía, echaremos un vistazo al Si más Declaración en PostgreSQL.

Si más en PostgreSQL

Hay tres formas de declaraciones IF en PostgreSQL:

  • SI
  • Si entonces más
  • Si entonces Elsif

El SI La declaración determina qué declaraciones ejecutar en función del resultado de una expresión booleana.

La estructura básica del SI La declaración es la siguiente:

Si entonces
;
TERMINARA SI;

En el caso de Si entonces más, La estructura es la siguiente:

Si entonces
;
DEMÁS
;
TERMINARA SI;

Para Si entonces Elsif, La estructura es la siguiente:

Si entonces
;

Si entonces
;
DEMÁS
;
TERMINARA SI;

Requisitos previos

Para realizar los pasos demostrados en esta guía, necesitará los siguientes componentes:

  • Un sistema de Linux concurrido correctamente. Obtenga más información sobre cómo instalar Ubuntu en VirtualBox.
  • PostgreSQL instalado y configurado. Echa un vistazo a la instalación de PostgreSQL en Ubuntu.

Implementación de declaraciones de si más

En esta sección, mostraremos algunos ejemplos de implementación del Si más declaraciones que fuimos hasta ahora. La mayoría de los ejemplos no requieren ningún conjunto de datos anterior.

Ejemplo 1 - Usando si

El ejemplo contará con un programa simple: encontrar el más grande de dos números. Declararemos dos variables, les asignaremos valores, compararemos sus valores y la salida en función del resultado de la comparación.

Hacer $$
DECLARAR
var_a smallint: = 65;
var_b smallint: = 99;
COMENZAR
Si var_a> var_b, luego, avanza 'var_a> var_b';
TERMINARA SI;
Si var_a < var_b THEN RAISE NOTICE 'var_a < var_b';
TERMINARA SI;
Si var_a = var_b luego levante el aviso 'var_a = var_b';
TERMINARA SI;
Fin $$;

Aquí,

  • Estamos comparando el valor de dos Pequeño Variables var_a y var_b.
  • Al comparar, estamos ejecutando un Aviso Declaración para declarar el resultado de la comparación.

Ejemplo 2 - Usando si más

Si bien el ejemplo anterior funciona bien, viene con una ligera penalización de rendimiento. Prueba las condiciones para cada SI Declaración, consumir energía de procesamiento adicional.

Por ejemplo, si var_a> var_b es VERDADERO, entonces no hay necesidad de procesar más las declaraciones si, correcto? Solo tenemos que probar más si VAR_A> VAR_B regresa FALSO. Lo mismo ocurre con los otros niveles de las declaraciones de si.

Permítanos actualizar el código usando Si más declaración:

Hacer $$
DECLARAR
var_a smallint: = 65;
var_b smallint: = 99;
COMENZAR
Si var_a> var_b, luego, avanza 'var_a> var_b';
Más si var_a < var_b THEN RAISE NOTICE 'var_a < var_b';
Else si var_a = var_b luego eleva el aviso 'var_a = var_b';
TERMINARA SI;
TERMINARA SI;
TERMINARA SI;
Fin $$;

Aquí,

  • El programa siempre ingresará el primero SI declaración.
  • El segundo y tercero SI Las declaraciones se ejecutarán solo si el anterior SI Las declaraciones son FALSO.

Ejemplo 3 - Usando si Elsif

Podemos optimizar aún más el programa utilizando Si elsif declaración. Mira el código:

Hacer $$
DECLARAR
var_a smallint: = 65;
var_b smallint: = 99;
COMENZAR
Si var_a> var_b, luego, avanza 'var_a> var_b';
Elsif var_a < var_b THEN RAISE NOTICE 'var_a < var_b';
ELSIF VAR_A = VAR_B ENTONCES AVISO 'VAR_A = VAR_B';
TERMINARA SI;
Fin $$;

Aquí, solo escribimos una declaración if, reduciendo así la necesidad de TERMINARA SI declaraciones.

Conclusión

En esta guía, demostramos varias formas de Si más Declaraciones encontradas en PostgreSQL. También mostramos su uso usando un ejemplo simple.

PostgreSQL también viene con una tonelada de funciones predefinidas para consultas más eficientes. De hecho, también podemos construir consultas más complejas utilizando subterías.

Interesado en aprender más sobre PostgreSQL? Consulte la subcategoría PostgreSQL, abundante con guías en varios aspectos de PostgreSQL.