Mysql中特有的循环REPEAT…UNTIL你了解么?
1、掌握语法格式:
REPEAT
statement_list
UNTIL search_condition END REPEAT;
具体逻辑见图:

2、确立循环目标:
此处以求1至n的和为业务目标,这要实现从1+2=3,3+3=6,6+4=10,……这样循环的业务目标,最后得到和。

3、先建一个存储过程把业务逻辑实现。
delimiter //
DROP PROCEDURE IF EXISTS p_sum;
CREATE PROCEDURE p_sum(in n int)
BEGIN
DECLARE i INT;
DECLARE sum INT;
SET i = 1;
SET sum = 0;
REPEAT
set sum = sum + i;
set i = i +1;
UNTIL i > n END REPEAT;
SELECT sum;
END
//

4、我们发现这个循环方式与while有一点不同,它先执行。
REPEAT
set sum = sum + i;
set i = i +1;

5、执行完了再判断是否有必要执行下一次的循环。
REPEAT
set sum = sum + i;
set i = i +1;
UNTIL i > n END REPEAT;

6、执行存储过程,验证效果是否符合预期。
call p_sum(10);
执行结果与我们计算1+2+3+……+10 =55相同。

1、明确业务目标,判断是否要用循环;
2、确定循环步骤;
3、明确终止循环条件;
4、知道每步循环结果如何存储。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:196
阅读量:131
阅读量:175
阅读量:188
阅读量:171