Mysql中特有的循环REPEAT…UNTIL你了解么?

2025-10-23 01:44:10

1、掌握语法格式:

REPEAT

   statement_list

UNTIL search_condition END REPEAT;

具体逻辑见图:

Mysql中特有的循环REPEAT…UNTIL你了解么?

2、确立循环目标:

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

Mysql中特有的循环REPEAT…UNTIL你了解么?

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

//

Mysql中特有的循环REPEAT…UNTIL你了解么?

4、我们发现这个循环方式与while有一点不同,它先执行。

REPEAT

   set sum = sum + i;

   set i = i +1;

Mysql中特有的循环REPEAT…UNTIL你了解么?

5、执行完了再判断是否有必要执行下一次的循环。

REPEAT

   set sum = sum + i;

   set i = i +1;

UNTIL i > n END REPEAT;

Mysql中特有的循环REPEAT…UNTIL你了解么?

6、执行存储过程,验证效果是否符合预期。

call p_sum(10);

执行结果与我们计算1+2+3+……+10 =55相同。

Mysql中特有的循环REPEAT…UNTIL你了解么?

1、明确业务目标,判断是否要用循环;

2、确定循环步骤;

3、明确终止循环条件;

4、知道每步循环结果如何存储。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢