MySQL 如何在存储过程中使用REPEAT循环语句

MySQL 如何在存储过程中使用REPEAT循环语句

我们知道MySQL提供了循环语句,可以根据条件重复执行一块SQL代码。其中一个此类循环语句就是 REPEAT 循环语句。其语法如下 –

REPEAT
 statements;
 UNTIL expression
END REPEAT

首先,MySQL执行了语句,然后评估表达式。如果表达式的值为FALSE,MySQL会重复执行语句,直到表达式的值为TRUE。 REPEAT 循环在执行语句后检查表达式,这也是它被称为后测试循环的原因之一。

为了演示存储过程中使用 REPEAT 循环语句的用法,以下是一个示例 –

mysql> Delimiter //
mysql> CREATE PROCEDURE Repeat_Loop()
 -> BEGIN
 -> DECLARE A INT;
 -> DECLARE XYZ Varchar(50);
 -> SET A = 1;
 -> SET XYZ = '';
 -> REPEAT
 -> SET XYZ = CONCAT(XYZ,A,',');
 -> SET A = A + 1;
 -> UNTIL A > 10
 -> END REPEAT;
 -> SELECT XYZ;
 -> END //
Query OK, 0 rows affected (0.04 sec)

现在,当我们调用该存储过程时,我们可以看到以下结果 –

mysql> DELIMITER ;
mysql> CALL Repeat_Loop();
+-----------------------+
| XYZ                   |
+-----------------------+
| 1,2,3,4,5,6,7,8,9,10, |
+-----------------------+
1 row in set (0.00 sec)

Query OK, 0 rows affected (0.01 sec)

阅读更多:MySQL 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程