LEAVE ステートメントは、Label によって識別された、含まれている WHILE、REPEAT、LOOP、または BEGIN ステートメントの現在の繰り返し処理を停止します。
ループ条件を含んでいるステートメントの評価は (もしあれば) バイパスされ、ループは停止します。
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 -- Outer loop
...
DECLARE j INTEGER;
SET j = 0;
REPEAT -- Inner loop
...
IF i>= 2 AND j = 1 THEN
LEAVE X; -- Outer loop left from within inner loop
END IF;
...
SET j = j + 1;
UNTIL
j>= 3
END REPEAT;
SET i = i + 1;
UNTIL
i>= 3
END REPEAT X;
-- Execution resumes here after the leave