Spec-Zone .ru
спецификации, руководства, описания, API

13.6.5.5. LOOP Синтаксис

[begin_label:] LOOP    statement_listEND LOOP [end_label]

LOOP реализует конструкцию простого цикла, включая повторенному выполнению списка оператора, который состоит из одного или более операторов, каждый завершенный точкой с запятой (;) разделитель оператора. Операторы в пределах цикла повторяются, пока цикл не завершается. Обычно, это выполняется с a LEAVE оператор. В пределах сохраненной функции, RETURN может также использоваться, который выходит из функции полностью.

Пренебрежение включать оператор выхода из цикла приводит к бесконечному циклу.

A LOOP оператор может быть маркирован. Для правил относительно использования метки см. Раздел 13.6.2, "Синтаксис Метки Оператора".

Пример:

CREATE PROCEDURE doiterate(p1 INT)BEGIN  label1: LOOP    SET p1 = p1 + 1;    IF p1 < 10 THEN      ITERATE label1;    END IF;    LEAVE label1;  END LOOP label1;  SET @x = p1;END;