Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


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;