1,while…do…end while

/*  while循环语法:
while 条件 DO循环体;
end while;
*/-- 实例:
create procedure sum1(a int)
begindeclare sum int default 0;  -- default 是指定该变量的默认值declare i int default 1;
while i<=a DO -- 循环开始set sum=sum+i;set i=i+1;
end while; -- 循环结束
select sum;  -- 输出结果
end
-- 执行存储过程
call sum1(100);
-- 删除存储过程
drop procedure if exists sum1-- 实例2
DROP PROCEDURE IF EXISTS mywhile;
CREATE PROCEDURE mywhile ()
BEGIN
DECLARE i INT default 0;
outer_label: BEGIN  #设置一个标记并设置开始
while i<10 DO
SET i = i + 1;
IF i > 2 THEN
select '跳出循环' column1;
LEAVE  outer_label;  #满足条件,终止循环,跳转到end outer_label标记
ELSE
SELECT i as column1;
END IF;
end while;
END outer_label;  #设置标记并结束
END
call mywhile;

2,loop…leave…end loop

/*loop 循环语法:
loop_name:loopif 条件 THEN -- 满足条件时离开循环leave loop_name;  -- 和 break 差不多都是结束训话end if;
end loop;
*/
-- 实例:
create procedure sum2(a int)
begindeclare sum int default 0;declare i int default 1;loop_name:loop -- 循环开始if i>a then leave loop_name;  -- 判断条件成立则结束循环  好比java中的 boeakend if;set sum=sum+i;set i=i+1;end loop;  -- 循环结束select sum; -- 输出结果
end
-- 执行存储过程
call sum2(100);
-- 删除存储过程
drop procedure if exists  sum2-- 实例2
DECLARE num  INT;
DECLARE str  VARCHAR(255);
SET num =1;
SET my_string = '';
loop_label:  LOOP
IF  num <10THENLEAVE  loop_label;-- 相当于java中的break
ENDIF;
SET  num = num +1;
IF(num mod3)THENITERATE  loop_label; -- iterate相当于java中continue
ELSE
SET  my_string =CONCAT(my_string,num,',');
ENDIF;
END LOOP;
3,repeat…until…end repeat
/*repeat 循环语法
repeat循环体
until 条件 end repeat;
*/
-- 实例;
create procedure sum3(a int)
begindeclare sum int default 0;declare i int default 1;repeat -- 循环开始set sum=sum+i;set i=i+1;until i>a end repeat; -- 循环结束select sum; -- 输出结果
end-- 执行存储过程
call sum3(100);
-- 删除存储过程
drop procedure if exists sum3

在MySQL存储过程,需要循环结构 有个名称 ,其他都是一样的.
mysql中没有for…in…循环

Mysql中的三种循环相关推荐

  1. java循环控制语句,简述Java流程控制语句中的三种循环控制语句,并描述下它们的区别。...

    简述Java流程控制语句中的三种循环控制语句,并描述下它们的区别. 答:for语句,构建确定循环次数的循环结构 while语句,通常构建不确定循环次数的循环结构 do-while语句,通常构建不确定循 ...

  2. Oracle中的emp、dept、bonus及salgrade表的新建及MySQL中的三种注释形式

    /*下面会包含三种mysql的注释形式 1.#... 2."-- ..."(--后需加一个空格) 3.*/ #1.创建dept表;插入dept表中的值 CREATE TABLE d ...

  3. linux mysql date 格式_关于MySQL中的三种日期类型

    最近遇到两次插入日期类型后,数值为 0000-00-00 00:00:00 的情况,于是查了一下官方文档,找到了原因. MySQL中我们经常用来存储日期的数据类型有三种:Date.Datetime.T ...

  4. java中利用三种循环对一到一百之间六的倍数出现多少次的代码

    while循环: class test1{ public static void main(String[]args) {int count=0; //定义变量存储6的倍数出现的次数int i=1;w ...

  5. MySQL存储过程中的3种循环

    MySQL存储过程中的3种循环 在MySQL存储过程的语句中有三个标准的循环方式:WHILE循环,LOOP循环以及REPEAT循环.还有一种非标准的循环方式:GOTO,不过这种循环方式最好别用,很容易 ...

  6. 简单介绍Lua中三种循环语句的使用

    今天小编就为大家分享一篇关于Lua中三种循环语句的使用讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧 Lua的循环和C语言的循环的语法其实差不多,所以, ...

  7. MySQL buffer pool中的三种链

    三种page.三种list.LRU控制调优 一.innodb buffer pool中的三种页 1.free page:从未用过的页 2.clean page:干净的页,数据页的数据和磁盘一致 3.d ...

  8. php连接虚拟机中mysql数据库吗,PHP连接MySQL数据库的三种方式

    本篇文章给大家介绍一下PHP连接MysqL数据库的三种方式(MysqL.MysqLi.pdo),结合实例形式分析了PHP基于MysqL.MysqLi.pdo三种方式连接MysqL数据库的相关操作技巧与 ...

  9. java循环do while_Java中for、while、do while三种循环语句的区别介绍

    这篇文章主要介绍了Java中for.while.do while三种循环语句的区别介绍的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下 本文通过实例讲解给大家介绍Java中for.whil ...

最新文章

  1. usaco Healthy Holsteins
  2. 【图】2015年Google搜索引擎排名算法(完整版)
  3. BZOJ 3731: Gty的超级妹子树
  4. CrystalDiskInfo的下载使用
  5. Python----面向对象---自定义元类控制类的实例化行为的应用
  6. ios 内存管理的理解(三)ARC下 对象内存管理
  7. python源码中的学习笔记_第2章_对象的布尔值与选择结构
  8. Gradle 插件Debug调试
  9. Python解法华为OJ机试-迷宫问题
  10. 二阶系统阶跃响应实验_二阶系统阶跃响应实验报告
  11. 无法完成操作,因为文件包含病毒或潜在的垃圾软件
  12. X200 BIOS 黑屏
  13. POI Excel合并 分页符的复制
  14. c语言反三角函数正切,arc(完整的反三角函数值表)
  15. 计算机专业知识更新速度快,最近及计算机专业知识.doc
  16. 订单管理_04删除订单信息流程
  17. unshift() 方法php,unshift方法怎么使用
  18. 初学乍练redis:Redis 5 Cluster手工指定主从关系
  19. 计算机电路中bga是什么,电路板如何判断哪些是BGA芯片
  20. protect 继承_public、protect、private继承方式 C++

热门文章

  1. PHP - 回调函数概念与用法实例分析 - 学习/实践
  2. 阿里的黄金时代|一点财经
  3. 腾讯地图中轻松定义多边形
  4. 服务器主机安装win10系统稳定吗,服务器主机上安装win10
  5. 抖音小程序配置webview域名
  6. MFC ---- CString
  7. 长安链Batch交易池生产可用重构方案设计及其成效
  8. 程序员的13个外包接私活网站,你有技术就有钱!
  9. 【常见的优化算法介绍】
  10. html消除图之间间距,html表格间距怎么取消 html 表格行之间的间距怎么设置