mysql常见的三种循环方式:while、repeat和loop循环。还有一种goto,不推荐使用。

1.while循环

-- 设置mysql分隔符为//,也就意味着,当遇到下一个//时,整体执行SQL语句

DELIMITER //

DROP PROCEDURE if EXISTS ‘test’; # 如果存在test存储过程则删除

CREATE procedure test() # 创建无参存储过程,名称为test

BEGIN

DECLARE i INT; # 申明变量

SET i = 0; # 变量赋值

WHILE i<5 DO # 结束循环的条件: 当i大于5时跳出while循环

INSERT INTO test VALUES(i+11,'test','20'); # 往test表添加数据

SET i = i+1; # 循环一次,i加1

END WHILE; # 结束while循环

SELECT * FROM test; # 查看test表数据

END

// # 结束定义语句

CALL test(); # 调用存储过程

DELIMITER ; # 重新将分隔符设置为;

2.repeat循环

DELIMITER //

DROP PROCEDURE IF EXISTS test;

CREATE PROCEDURE test()

BEGIN

DECLARE i INT;

SET i = 0;

REPEAT

INSERT INTO test VALUES(i+11,'test','20');          # 往test表添加数据

SET i = i + 1;     # 循环一次,i加一

UNTIL i > 10 END REPEAT;     # 结束循环的条件: 当i大于10时跳出repeat循环

SELECT * FROM test;

END

//

CALL test();

DELIMITER ;

3.loop循环

DELIMITER //

DROP PROCEDURE IF EXISTS test;

CREATE PROCEDURE test()

BEGIN

DECLARE i INT;

SET i = 0;

lp : LOOP     # lp为循环体名,可随意 loop为关键字

INSERT INTO test VALUES(i+11,'test','20');   # 往test表添加数据

SET i = i + 1;     # 循环一次,i加一

IF i > 10 THEN     # 结束循环的条件: 当i大于10时跳出loop循环

LEAVE lp;

END IF;

END LOOP;

SELECT * FROM test;

END

//

CALL test();

DELIMITER ;

mysql for loop_MySQL循环语句 - Linux就该这么学的个人空间 - OSCHINA - 中文开源技术交流社区...相关推荐

  1. rpm包备份命令linux,RPM常用命令介绍 - Linux就该这么学的个人空间 - OSCHINA - 中文开源技术交流社区...

    rpm命令是RPM软件包的管理工具.rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎.逐渐受到其他发行版的采用.RPM ...

  2. linux文字命令窗口怎样截图,命令行中截图的小工具 - Linux就该这么学的个人空间 - OSCHINA - 中文开源技术交流社区...

    Linux 桌面上有许多用于截屏的优秀工具,比如 Ksnapshot[1] 和 Shutter[2] .甚至 GNOME 桌面自带的简易截屏工具也能够很好的工作.但是,如果你很少截屏,或者你使用的 L ...

  3. 小米 mysql sql审核_mysql和sql - 小米米儿小的个人空间 - OSCHINA - 中文开源技术交流社区...

    一.MySQL的安装 使用命令终端打开服务启动项:services.msc 安装MySQL后,应注意以下配置: 1.选择第一项Reconfigure Instance进行重新配置. 2.选择第一项详细 ...

  4. MySQL中购买的语句,mysql操作语句 - 买灰机自己开的个人空间 - OSCHINA - 中文开源技术交流社区...

    一.对数据库的CRUD 1.创建数据库:create database  数据库名[character set 字符集] 2.查询所有数据库:show databases 3.查询数据库定义结构:sh ...

  5. mysql跨年统计年前年后_PHP面试总结 - osc_chmxgjn9的个人空间 - OSCHINA - 中文开源技术交流社区...

    18.一群猴子排成一圈,按1,2,-,n依次编号.然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始数,再数到第m只,在把它踢出去-,如此不停 的进行下去,直到最后只剩下一只猴子为止,那只猴子 ...

  6. zabbix中mysql连不上的排错_zabbix使用排错 - oschina130111的个人空间 - OSCHINA - 中文开源技术交流社区...

    在linux系统中,几乎所有运行的服务都会产生相对就的日志(log),所运行的程序在出错时都会有错误提示,即使没有任何提示也可以通过"echo $"来查看运行是否成功.使用zabb ...

  7. 4核a5中断linux,中断与时钟 - osc_a5pzxo31的个人空间 - OSCHINA - 中文开源技术交流社区...

    0.序言 中断服务程序的执行并不存在于进程上下问中,要求中断服务程序的时间要尽量短.因此,Linux中断处理中引入上半部和下半部分离的机制.另外,内核对时钟的处理也是采用中断方式,而内核软件定时器最终 ...

  8. mysql 列转行union all_MySQL中的列转行 - osc_qheq8wav的个人空间 - OSCHINA - 中文开源技术交流社区...

    mysql中的列转行 在工作中遇到的一个MySQL列转行的统计: 场景 用户访问app时会跳出标签选择页面让用户选择喜欢的标签,在数据库中记录的是数组样式的字符串,数据样式大致如下: id user_ ...

  9. mysql的第一次作业_数据库入门第一次作业 - osc_2frf70qv的个人空间 - OSCHINA - 中文开源技术交流社区...

    数据库入门第一次作业 1.在某大学的<>中,用如下表来存储学生信息.其中,用户信息.星座信息和血型信息分别采用Users.Star和Blood三个表来保存,其中Users表引用了Star和 ...

最新文章

  1. WMI技术介绍和应用——查询系统信息
  2. 正则表达式 perl
  3. 安卓中的对话框通知---简单的对话框入门
  4. 小学生在家自学python_小学生都能学会的python(函数)
  5. 疫情下的远程办公:理解Linux虚拟网络设备之tun/tap
  6. jdbc和mysql编程_MySql数据库与JDBC编程三
  7. linux中副规则_Linux中的命名规范
  8. Django新手需要注意的10个要点
  9. Alpha、Beta、RC、GA、RTM、OEM等版本的解释
  10. SnapHelper硬核讲解
  11. 【新解】多品种小批量时代下,工业企业的成本核算方法
  12. 小程序云开发添加html页面,微信小程序云开发js抓取网页内容
  13. unity3d2018版skybox在哪里
  14. Runes——Dart
  15. 【重要】条形码原理39码和EAN-13码
  16. listen的第二个参数
  17. python流程图怎么画-Python使用graphviz画流程图过程解析
  18. 我眼中的:中国最美的情诗词
  19. mysql8 mgr一主多从部署
  20. 详细聊TTL电平、RS232接口和RS485接口

热门文章

  1. 阿里云应用配置管理ACM发布,重新定义云上配置的存放方式
  2. MaxCompute 中的Code Generation技术简介
  3. 小小的 likely 背后却大有玄机!
  4. 大数据给教育带来怎样的可能?
  5. IT 拉呱室 | 论我遇到的最刺激的bug【长期福利站】
  6. 如何删除第一张单页_单页网站-网站建设中独有的风景线
  7. 用python做tkinter_Python下用Tkinter进行GUI编程
  8. docker 查看实时日志
  9. Centos7 开机启动汇总
  10. 实战_02_Spring SpringMVC 整合Mybaits