13.6.5.6 Оператор REPEAT
[begin_label:] REPEAT
statement_list
UNTIL search_condition
END REPEAT [end_label]
Список операторов внутри оператора REPEAT повторяется до тех пор, пока выражение search_condition не станет истинным. Таким образом, оператор REPEAT всегда выполняет цикл хотя бы один раз. statement_list состоит из одного или нескольких операторов, каждый из которых заканчивается точкой с запятой (;) — разделителем операторов.
Оператор REPEAT может быть помечен меткой. Правила использования меток см. в разделе 13.6.2, «Метки операторов».
Пример:
mysql> delimiter //
mysql> CREATE PROCEDURE dorepeat(p1 INT)
BEGIN
SET @x = 0;
REPEAT
SET @x = @x + 1;
UNTIL @x > p1 END REPEAT;
END
//
Query OK, 0 rows affected (0.00 sec)
mysql> CALL dorepeat(1000)//
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT @x//
+------+
| @x |
+------+
| 1001 |
+------+
1 row in set (0.00 sec)
© 2025 Oracle
Licensed under the GPLv2 License.