mysql while,loop,repeat循环,符合条件跳出循环
1、while循环
DELIMITER $$
DROP PROCEDURE IF EXISTS `sp_test_while`$$
CREATE PROCEDURE `sp_test_while`(
IN p_number INT, #要循环的次数
IN p_startid INT #循环的其实值
)
BEGIN
DECLARE v_val INT DEFAULT 0;
SET v_val=p_startid;
outer_label: BEGIN #设置一个标记
WHILE v_val<=p_number DO
SET v_val=v_val+1;
IF(v_val=100)THEN
LEAVE outer_label; #满足条件,终止循环,跳转到end outer_label标记
END IF;
END WHILE;
SELECT ‘我是while外,outer_label内的SQL‘; #由于这句SQL在outer_label代码块内,所以level后,这句SQL将不会执行;
#只要是在outer_label代码块内 任意位置 Leave outer_label,那么Leave后的代码将不再执行
END outer_label;
SELECT CONCAT(‘test‘,v_val) AS tname;
END$$ DELIMITER ; CALL sp_test_while(1000,0);
2、loop 循环
DELIMITER $$ DROP PROCEDURE IF EXISTS `sp_testloop`$$
CREATE PROCEDURE `sp_testloop`(
IN p_number INT, #要循环的次数
IN p_startid INT #循环的其实值
)
BEGIN
DECLARE v_val INT DEFAULT 0;
SET v_val=p_startid; loop_label: LOOP #循环开始
SET v_val=v_val+1; IF(v_val>p_number)THEN
LEAVE loop_label; #终止循环
END IF;
END LOOP;
SELECT CONCAT(‘testloop_‘,v_val) AS tname;
END$$ delimiter ; CALL sp_testloop(1000,0);
3、repeat循环下载地址
DELIMITER $$
DROP PROCEDURE IF EXISTS `sp_test_repeat`$$
CREATE PROCEDURE `sp_test_repeat`(
IN p_number INT, #要循环的次数
IN p_startid INT #循环的其实值
)
BEGIN
DECLARE v_val INT DEFAULT 0;
SET v_val=p_startid; REPEAT #repeat循环开始 SET v_val=v_val+1;
until v_val>p_number #终止循环的条件,注意这里不能使用‘;‘分号,否则报错 END repeat; #循环结束 SELECT CONCAT(‘test‘,v_val) AS tname;
END$$ DELIMITER ; CALL sp_test_repeat(1000,0);
mysql while,loop,repeat循环,符合条件跳出循环的更多相关文章
- mysql 单表,多表,符合条件,子查询
单表: HAVING过滤 二次筛选 只能是group by 之后的字段 1.查询各岗位内包含的员工个数小于2的岗位名.岗位内包含员工名字.个数 select post,group_concat(nam ...
- mysql 随机选取一条符合条件的记录
暂时记录下: SELECT * FROM `kw_user` AS t1 JOIN ( SELECT ROUND( RAND( ) * ( ( SELECT MAX( id ) FROM `kw_u ...
- MySQL 中的三中循环 while loop repeat 的基本用法
-- MySQL中的三中循环 while . loop .repeat 求 1-n 的和 -- 第一种 while 循环 -- 求 1-n 的和 /* while循环语法: while 条件 DO 循 ...
- MySQL中的三中循环 while 、 loop 、repeat 求 1~n 的和
-- MySQL中的三中循环 while . loop .repeat 求 1-n 的和 -- 第一种 while 循环 -- 求 1-n 的和/* while循环语法:while 条件 DO 循环体 ...
- MySQL 中while loop repeat 的基本用法
-- MySQL中的三中循环 while . loop .repeat 求 1-n 的和 -- 第一种 while 循环 -- 求 1-n 的和 /* while循环语法: while 条件 DO 循 ...
- MySQL中 while loop repeat 的用法
-- MySQL中的三中循环 while . loop .repeat 求 1-n 的和 -- 第一种 while 循环 -- 求 1-n 的和 /* while循环语法: while 条件 DO 循 ...
- MySQL与Oracle 差异比较之四条件循环语句
循环语句 编号 类别 ORACLE MYSQL 注释 1 IF语句使用不同 IF iv_weekly_day = 'MON' THEN ii_weekly_day := 'MON';ELS ...
- Oracle根据符合条件的数据循环批量更新
--批量对符合条件的表记录进行更新 --aa代表查询出的符合条件数据的别名 --aa后的表示需要符合的条件 --loop后开始写更新操作 begin for aa in (select a.objec ...
- MySQL之多表查询一 介绍 二 多表连接查询 三 符合条件连接查询 四 子查询 五 综合练习
MySQL之多表查询 阅读目录 一 介绍 二 多表连接查询 三 符合条件连接查询 四 子查询 五 综合练习 一 介绍 本节主题 多表连接查询 复合条件连接查询 子查询 首先说一下,我们写项目一般都会建 ...
随机推荐
- AnagularJs之directive
前言: 昨日周六,再登梧桐山.六点半,起.未到顶,雨纷飞.冒雨行,终封顶,只为合照一张.五点半,下山行.聆听大自然的律动,双腿随其自然而颤抖!今早起,我的双腿犹如叛逆期的少年,或如领家的孩童,遂决定今 ...
- 编写高质量代码:改善Java程序的151个建议(第2章:基本类型___建议26~30)
建议26:提防包装类型的null值 我们知道Java引入包装类型(Wrapper Types)是为了解决基本类型的实例化问题,以便让一个基本类型也能参与到面向对象的编程世界中.而在Java5中泛型更是 ...
- BizTalk Server 2016
10月28日微软正式发布BizTalk第十个版本BizTalk Server 2016,陆续发布了Azure VM镜像.MSDN版本.开发者版本等.以下为BizTalk Server 2016 新特性 ...
- Effective java笔记(六),方法
38.检查参数的有效性 绝大多数方法和构造器对于传递给它们的参数值都会有限制.如,对象引用不能为null,数组索引有范围限制等.应该在文档中指明所有这些限制,并在方法的开头处检查参数,以强制施加这些限 ...
- WinForm 代码实现以管理员身份运行
[STAThread] static void Main(string[] Args) { //获得当前登录的Windows用户标示 System.Security.Principal.Windows ...
- jquery实现tab切换完整代码
代码如下,保存到html文件打开: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...
- php设置手机访问浏览器版apache配置
我们开发项目的时候经常会开发到浏览器版本的网页,这样我们就经常需要用手机连接局域网以方便测试,那么怎么配置服务器文件呢. 1.首先关闭电脑的windows防火墙 右击我的网络/windows防火墙 ...
- 【linux草鞋应用编程系列】_1_ 开篇_系统调用IO接口与标准IO接口
最近学习linux系统下的应用编程,参考书籍是那本称为神书的<Unix环境高级编程>,个人感觉神书不是写给草鞋看的,而是 写给大神看的,如果没有一定的基础那么看这本书可能会感到有些头重脚轻 ...
- AutoMapper之ABP项目中的使用介绍
最近在研究ABP项目,昨天写了Castle Windsor常用介绍以及其在ABP项目的应用介绍 欢迎各位拍砖,有关ABP的介绍请看阳光铭睿 博客 AutoMapper只要用来数据转换,在园里已经有很多 ...
- mysql 添加索引 mysql 创建索引
1.添加PRIMARY KEY(主键索引) mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) 2.添加UNIQUE(唯一索引 ...