MySQL 重复循环
总结:在本教程中,您将学习如何使用 MySQL REPEAT 语句执行一个或多个语句,直到搜索条件为真。
该 REPEAT 语句执行一个或多个语句,直到搜索条件为真。
以下是 REPEAT 循环语句的基本语法:
[begin_label:] REPEAT
statement
UNTIL search_condition
END REPEAT [end_label]
该 REPEAT 执行 statement ,直到 search_condition 计算结果为True。
所述 REPEAT 检查 search_condition 的执行之后 statement ,因此, statement 总是至少执行一次。这就是为什么 REPEAT 也称为测试后循环的原因。
该 REPEAT 声明可以在开始和结束标签。这些标签是可选的。
以下流程图说明了该 REPEAT 循环:

MySQL REPEAT 循环实例
此语句创建一个名为的存储过程 RepeatDemo ,该过程使用该 REPEAT 语句连接从 1 到 9 的数字:
DELIMITER $$
CREATE PROCEDURE RepeatDemo()
BEGIN
DECLARE counter INT DEFAULT 1;
DECLARE result VARCHAR(100) DEFAULT '';
REPEAT
SET result = CONCAT(result,counter,',');
SET counter = counter + 1;
UNTIL counter >= 10
END REPEAT;
-- display result
SELECT result;
END$$
DELIMITER ;
在这个存储过程中:
首先,声明两个变量 counter , result 并将它们的初始值设置为 1 和空白。
该 counter 变量用于循环中从 1 到 9 的计数。该 result 变量用于存储每次循环迭代后的连接字符串。
其次,使用函数将 counter 值附加到 result 变量, CONCAT() 直到 counter 大于或等于 10。
以下语句调用 RepeatDemo() 存储过程:
CALL RepeatDemo();
这是输出:
+--------------------+
| result |
+--------------------+
| 1,2,3,4,5,6,7,8,9, |
+--------------------+
1 row in set (0.02 sec)
Query OK, 0 rows affected (0.02 sec)
在本教程中,您将学习如何使用 MySQL REPEAT 语句执行一个或多个语句,直到搜索条件为真。