La sentencia LEAVE detiene la iteración actual de la sentencia WHILE, REPEAT, LOOP o BEGIN que la contiene identificada mediante Etiqueta.
Se omite la evaluación de la condición de bucle (si existe) de la sentencia que la contiene y el bucle se detiene.
DECLARE i INTEGER;
SET i = 1;
X : REPEAT
...
IF i >= 4 THEN
LEAVE X;
END IF;
SET i = i + 1;
UNTIL
FALSE
END REPEAT;
DECLARE i INTEGER;
SET i = 0;
X : REPEAT -- Bucle externo
...
DECLARE j INTEGER;
SET j = 0;
REPEAT -- Bucle interno
...
IF i >= 2 AND j = 1 THEN
LEAVE X; -- Bucle externo restante del bucle interno
END IF;
...
SET j = j + 1;
UNTIL
j >= 3
END REPEAT;
SET i = i + 1;
UNTIL
i >= 3
END REPEAT X;
-- Después de LEAVE la ejecución se reanuda aquí