SENTENCIAS DE CONTROL
by aaron morales
1. GO TO
1.1. La sentencia GOTO permite cambiar la línea secuencial de la ejecución hacia una etiqueta.
1.2. Define the label: label: Alter the execution: GOTO label
1.3. GOTO puede existir dentro de declaraciones condicionales de control de flujo, bloques de instrucciones o procedimientos, pero no puede ir a una etiqueta fuera del lote. La ramificación de GOTO puede ir a una etiqueta definida antes o después de GOTO
2. WHILE
2.1. El bucle WHILE se repite mientras expresión se evalué como verdadero
2.2. WHILE Boolean_expression { sql_statement | statement_block | BREAK | CONTINUE }
2.3. Si dos o más bucles WHILE están anidados, el BREAK interno sale al siguiente bucle más externo. Todas las declaraciones después del final del ciclo interno se ejecutan primero, y luego se reinicia el siguiente ciclo más externo.
3. IF
3.1. PERMITE EVALUAR UNA EXPRESION BOLEANA
3.2. IF (<expresion>) BEGIN ... END ELSE IF (<expresion>) BEGIN ... END ELSE BEGIN ...
3.3. La estructura IF admite el uso de subconsultas, puede usarse en lotes, en procedimientos almacenados y en consultas.
4. CASE
4.1. Puede evaluar múltiples expresiones y devolver para cada una de ellas un valor.
4.2. CASE <expresion> WHEN <valor_expresion> THEN <valor_devuelto> WHEN <valor_expresion> THEN <valor_devuelto> ELSE <valor_devuelto> -- Valor por defecto END
4.3. La expresión case evalúa sus condiciones secuencialmente y se detiene con la primera condición cuya condición se cumple.