PostgreSQL – Continuar

En PostgreSQL , la declaración de continuación se usa para omitir la iteración actual prematuramente y pasar directamente a la siguiente iteración. La sentencia continue se utiliza en conjeturas con todo tipo de bucles, incluidos bucles incondicionales, bucles while y bucles for.

Sintaxis:

CONTINUE [ label ] [ WHEN boolean-expression ];

Si analizamos la sintaxis anterior:

  • etiqueta: si no hay ninguna etiqueta presente, comienza la siguiente iteración del ciclo. Es decir, se omiten todas las sentencias que quedan en el cuerpo del bucle y el control vuelve a la expresión de control del bucle. Sin embargo, si la etiqueta está presente, especifica la etiqueta del bucle cuya ejecución continuará.
     
  • WHEN condition: es simplemente una expresión booleana que especifica la condición para omitir la iteración actual del ciclo. Si la condición es verdadera, se omitirá la iteración del bucle actual. Sin embargo, si es falso, el circuito sigue el patrón de flujo normal.

Tanto la etiqueta como la condición WHEN son opcionales y pueden usarse o no con la declaración de continuación;

Ejemplo 1 : 

El siguiente ejemplo se usará para mostrar los números pares del 1 al 10.

do
$$
declare
  cnt int = 0;
begin
 loop
 -- increment of cnt
    cnt = cnt + 1;
 -- exit the loop if cnt > 10
 exit when cnt > 10;
 -- skip the iteration if cnt is an odd number
 continue when mod(cnt,2) = 1;
 -- print out the cnt
 raise notice '%', cnt;
 end loop;
end;
$$;

Producción:

En el ejemplo anterior, usamos la instrucción continuar para omitir los números impares usando el hecho de que el resto cuando un número impar se divide por 2 es 1.  

Ejemplo 2:

El siguiente ejemplo se usará para mostrar todos los números del 1 al 10 sin mostrar el número 6.

do
$$
declare
  cnt int = 0;
begin 
 loop
 -- increment of cnt
    cnt = cnt + 1;
 -- exit the loop if cnt > 10
 exit when cnt > 10;
 -- skip the iteration if cnt is an odd number
 continue when cnt = 6;
 -- print out the cnt
 raise notice '%', cnt;
 end loop;
end;
$$;

Producción:

En el ejemplo anterior, usamos la instrucción continuar para omitir la iteración cuando el valor de la variable cnt llega a 6.

Publicación traducida automáticamente

Artículo escrito por ashutoshrathi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *