MySQL 8.4 Release Notes
15.6.5.5 循环语句
[begin_label:] LOOP
statement_list
END LOOP [end_label]
LOOP
实现了简单的循环构造,允许重复执行语句列表,该列表由一个或多个语句组成,每个语句都以分号;
结尾。循环中的语句直到循环被终止才会停止。通常,这是通过LEAVE
语句实现的。在存储函数中,也可以使用RETURN
语句,退出整个函数。
忽略循环终止语句将导致无限循环。
一个LOOP
语句可以被标记。关于标签使用规则,请见第15.6.2节,“Statement Labels”。
示例:
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;