Mysql中的三种循环
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中的三种循环相关推荐
- java循环控制语句,简述Java流程控制语句中的三种循环控制语句,并描述下它们的区别。...
简述Java流程控制语句中的三种循环控制语句,并描述下它们的区别. 答:for语句,构建确定循环次数的循环结构 while语句,通常构建不确定循环次数的循环结构 do-while语句,通常构建不确定循 ...
- Oracle中的emp、dept、bonus及salgrade表的新建及MySQL中的三种注释形式
/*下面会包含三种mysql的注释形式 1.#... 2."-- ..."(--后需加一个空格) 3.*/ #1.创建dept表;插入dept表中的值 CREATE TABLE d ...
- linux mysql date 格式_关于MySQL中的三种日期类型
最近遇到两次插入日期类型后,数值为 0000-00-00 00:00:00 的情况,于是查了一下官方文档,找到了原因. MySQL中我们经常用来存储日期的数据类型有三种:Date.Datetime.T ...
- java中利用三种循环对一到一百之间六的倍数出现多少次的代码
while循环: class test1{ public static void main(String[]args) {int count=0; //定义变量存储6的倍数出现的次数int i=1;w ...
- MySQL存储过程中的3种循环
MySQL存储过程中的3种循环 在MySQL存储过程的语句中有三个标准的循环方式:WHILE循环,LOOP循环以及REPEAT循环.还有一种非标准的循环方式:GOTO,不过这种循环方式最好别用,很容易 ...
- 简单介绍Lua中三种循环语句的使用
今天小编就为大家分享一篇关于Lua中三种循环语句的使用讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧 Lua的循环和C语言的循环的语法其实差不多,所以, ...
- MySQL buffer pool中的三种链
三种page.三种list.LRU控制调优 一.innodb buffer pool中的三种页 1.free page:从未用过的页 2.clean page:干净的页,数据页的数据和磁盘一致 3.d ...
- php连接虚拟机中mysql数据库吗,PHP连接MySQL数据库的三种方式
本篇文章给大家介绍一下PHP连接MysqL数据库的三种方式(MysqL.MysqLi.pdo),结合实例形式分析了PHP基于MysqL.MysqLi.pdo三种方式连接MysqL数据库的相关操作技巧与 ...
- java循环do while_Java中for、while、do while三种循环语句的区别介绍
这篇文章主要介绍了Java中for.while.do while三种循环语句的区别介绍的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下 本文通过实例讲解给大家介绍Java中for.whil ...
最新文章
- usaco Healthy Holsteins
- 【图】2015年Google搜索引擎排名算法(完整版)
- BZOJ 3731: Gty的超级妹子树
- CrystalDiskInfo的下载使用
- Python----面向对象---自定义元类控制类的实例化行为的应用
- ios 内存管理的理解(三)ARC下 对象内存管理
- python源码中的学习笔记_第2章_对象的布尔值与选择结构
- Gradle 插件Debug调试
- Python解法华为OJ机试-迷宫问题
- 二阶系统阶跃响应实验_二阶系统阶跃响应实验报告
- 无法完成操作,因为文件包含病毒或潜在的垃圾软件
- X200 BIOS 黑屏
- POI Excel合并 分页符的复制
- c语言反三角函数正切,arc(完整的反三角函数值表)
- 计算机专业知识更新速度快,最近及计算机专业知识.doc
- 订单管理_04删除订单信息流程
- unshift() 方法php,unshift方法怎么使用
- 初学乍练redis:Redis 5 Cluster手工指定主从关系
- 计算机电路中bga是什么,电路板如何判断哪些是BGA芯片
- protect 继承_public、protect、private继承方式 C++