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