While、Loop和Repeat三种循环语句有什么区别

57次阅读
没有评论

共计 2018 个字符,预计需要花费 6 分钟才能阅读完成。

自动写代码机器人,免费开通

这篇文章主要介绍 While、Loop 和 Repeat 三种循环语句有什么区别,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

相同点:不可单独使用,主要用于存储过程和函数 FUNCTION 中。区别:WHILE 先判断,后执行;满足条件才执行。REPEAT 和 LOOP 先执行,后判断;满足条件就结束循环。当条件为 false 时,REPEAT 也能执行一次;其他两个语句无法执行。

一、MySQL 循环概述

MySQL 中有三种循环,分别是 WHILE , REPEAT , LOOP(据说还有 goto),不可单独使用,主要用于 存储过程 PROCEDURE 和 函数 FUNCTION 中。

二、WHILE 循环

1、语法:WHILE condition DO doSomething END WHILE ;

2、说明:condition 条件满足情况下,则执行循环体内容,不满足,则结束循环。(如:2 1,满足;1 2,不满足。)— 先判断,后执行。

3、示例:创建 while 循环的存储过程 pro_while

DROP PROCEDURE IF EXISTS pro_while ;
CREATE PROCEDURE pro_while()
BEGIN
  DECLARE sum INT DEFAULT 0 ;
  WHILE sum   100 DO
 INSERT INTO `chapter`.`batch` (`id`, `name`, `age`) 
 VALUES (CONCAT(sum,),CONCAT(while ,sum) , sum);
 SET sum = sum + 1;
  END WHILE ;
END;

4、调用存储过程:CALL pro_while();

相关推荐《mysql 视频教程》

三、REPEAT 循环

1、语法:REPEAT doSomething UNTIL condition END REPEAT ;

2、说明:doSomething 先执行相关操作,再判断是否满足条件,满足,结束循环。(和 WHILE 循环相反)— 先执行,后判断。

3、示例:创建 repeat 循环的函数 fun_repeat

DROP FUNCTION IF EXISTS fun_repeat ;
CREATE FUNCTION fun_repeat() RETURNS INT
BEGIN
 DECLARE sum INT DEFAULT 1000 ;
 REPEAT 
 INSERT INTO `chapter`.`batch` (`id`, `name`, `age`) 
 VALUES (CONCAT(sum,),CONCAT(repeat ,sum) , sum);
 SET sum = sum + 1; 
 UNTIL sum   1100 END REPEAT ; --  满足条件结束循环
 RETURN 1;
END;

4、执行函数:SELECT fun_repeat();

四、LOOP 循环

1、语法:

loop_name : LOOP
 IF condition THEN
 LEAVE loop_name ;
 END IF;
 doSomething
END LOOP;

2、说明:

loop_name 为循环名字,自定义,不可用关键字。

doSomething 执行的相关操作。

condition 满足条件,则结束循环。— 先判断,后执行。

3、示例:创建 loop 循环的存储过程 pro_loop

DROP PROCEDURE IF EXISTS pro_loop ;
CREATE PROCEDURE pro_loop()
BEGIN
 DECLARE sum int DEFAULT 10000 ;
 loop_sums : LOOP -- 【开始】loop  名字,自定义
 IF sum   10100 THEN
 LEAVE loop_sums ; --  满足条件,则结束循环
 END IF; 
 INSERT INTO `chapter`.`batch` (`id`, `name`, `age`) 
 VALUES (CONCAT(sum,),CONCAT(loop ,sum) , sum);
 SET sum = sum + 1; 
 END LOOP ; -- 【结束】END ;

4、调用存储过程:CALL pro_loop();

五、总结

1、WHILE 循环,先判断,后执行。满足条件,执行,执行循环。

2、REPEAT 循环,先执行,后判断。满足条件,不执行,结束循环。

3、LOOP 循环,先执行,后判断。满足条件,不执行,结束循环。

4、当条件为 false 时,REPEAT 循环也能执行一次,类似于 java 中的 do {} while (condition); 循环;而 WHILE、LOOP 循环无法执行。

以上是“While、Loop 和 Repeat 三种循环语句有什么区别”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注丸趣 TV 行业资讯频道!

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计2018字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)