MySQL 8.4 Release Notes
15.6.5.6 重复语句
Press CTRL+C to copy[begin_label:] REPEAT statement_list UNTIL search_condition END REPEAT [end_label]
在REPEAT
语句中,语句列表将被重复,直到search_condition
表达式为真。因此,REPEAT
总是至少执行一次循环。statement_list
由一个或多个语句组成,每个语句以分号(;
)语句分隔符结尾。
一个REPEAT
语句可以标记。标记使用规则,请见第15.6.2节,“语句标记”。
示例:
Press CTRL+C to copymysql> 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)