博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql while,loop,repeat循环,符合条件跳出循环
阅读量:3686 次
发布时间:2019-05-21

本文共 1510 字,大约阅读时间需要 5 分钟。

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);

转载地址:http://psxdn.baihongyu.com/

你可能感兴趣的文章
MYSQL进阶(二):
查看>>
Linux网络编程学习总结
查看>>
服务端应用安全——加密算法与随机数
查看>>
滑动窗口Mininum_window_substring解题以及思路
查看>>
股票买卖4 (any k) 时间维度优化,以及犯错python for x in range(x)错误经验
查看>>
pyenv Install tkinter on macOS
查看>>
python 调用模块 模块内部调用其他模块的import问题:
查看>>
conda 安装以及使用小结
查看>>
python魔术方法
查看>>
leetcode 1288 删除覆盖区间,python 自定义sorted 使用总结
查看>>
机器学习: 统一特征取值范围
查看>>
使用bert 快速进行 词嵌入word2vec教程
查看>>
【linux】menuconfig详解
查看>>
【linux】Linux开机自动加载模块
查看>>
【linux】网卡驱动框架介绍
查看>>
word中编号前面的缩进过大
查看>>
Java--顺序表插入与删除
查看>>
数组,数组越界异常,增强for循环,数组索引,循环遍历数组,利用数组动态输入学生成绩,循环遍历输出数组内容
查看>>
操作数组元素,数组赋值,卫语句,==,Array.equals(数组1,数组2),equals,循环遍历输出数组元素,增强for遍历输出元素,switch,if..else..,比较数组元素是否一致
查看>>
动态录入学生个数,录入每个数组元素,并求出数组元素的最值以及平均值
查看>>