循环结构

分类 while    loop    repeat

循环控制:

iterate类似continue ,继续,  结束本次循环,继续下一次

leave 类似于break  跳出  结束当前所在的循环

1、while

语法:

【标签】while   循环条件 do

  循环体;

end while【标签】;

2、loop

语法

【标签】loop

  循环体

end   loop【标签】;可以用来模拟简单的死循环

3、repeat

语法:

  【标签】repeat

    循环体

   until 结束循环的条件

  end   repeat 【标签】;

while案列:

批量插入多条数据 无循环控制语句

  CREATE PROCEDURE PRO_whiel1( IN count  INT)

    BEGIN

      DECLARE  i  INT  DEFAULT 1;

      WHILE  i<=count  DO

        INSERT  INTO  admin(username,  password)              VALUES(CONCAT('Rose',i),  '333');

        SET  i=i+1;

     END  WHILE;

  END $

  CALL  PRO_whiel1(100)  $;

案例:

一、已知表stringcontent 其中字段  id  自增长   content varchar(20)

向该表插入指定个数的  随机字符串

DROP TABLE IF  EXISTS  stringcontent;

CREATE  TABLE  stringcontent(

  id  INT  PRIMARY KEY AUTO_INCREMENT,

  content VARCHAR(20)

);

DELIMITER  $

CREATE  PROCEDURE  test_randstr_insert(IN  insertCount  INT )

  BEGIN

    DECLARE  i INT DEFAULT  1;   #定义一个循环变量i,表示插入次数

    DECLARE  str  VARCHAR(26)  DEFAULT 'abcdefghijklmnopqrstuvwxyz';

    DECLARE  startIndex INT DEFAULT 1;  #代表起始索引

    DECLARE   len  INT  DEFAULT  1;#代表截取字符串的长度

    WHILE i<=insertCount  DO

      SET  len = FLOOR(RAND()*20-startIndex +1)+1;  #产生一个随机的整数,代表 截取长度 , 范围1-(26-startIndex+1)  FLOOR 向下取整  RAND 产生[0,1)的数

      SET  startIndex  = FLOOR(RND()*26+1);  # 产生一个随机整数   代表起始索引1-26

       INSERT  INTO  stringcontent(content)  VALUES(SUBSTR(str,  startIndex,  len);

      SET i =i+1;

    END WHILE;

   END $

Mysql:循环结构的更多相关文章

  1. Mysql基础(十一):流程控制结构、分支结构、循环结构

    流程控制结构 说明:顺序结构:程序从上往下依次执行分支结构:程序按条件进行选择执行,从两条或多条路径中选择一条执行循环结构:程序满足一定条件下,重复执行一组语句 分支结构 特点:1.if函数功能:实现 ...

  2. java系统化基础-day02-运算符、选择结构、循环结构

    1.java中的运算符 package com.wfd360.day02; import org.junit.Test; import java.math.BigInteger; /** * 1.算术 ...

  3. MySQL 树形结构 根据指定节点 获取其所在全路径节点序列

    背景说明 需求:MySQL树形结构, 根据指定的节点,获取其所在全路径节点序列. 问题分析 1.可以使用类似Java这种面向对象的语言,对节点集合进行逻辑处理,获取全路径节点序列. 2.直接自定义My ...

  4. MySQL 树形结构 根据指定节点 获取其所有父节点序列

    背景说明 需求:MySQL树形结构, 根据指定的节点,获取其所有父节点序列. 问题分析 1.可以使用类似Java这种面向对象的语言,对节点集合进行逻辑处理,获取父节点. 2.直接自定义MySQL函数  ...

  5. MySQL 树形结构 根据指定节点 获取其下属的所有子节点(包含路径上的枝干节点和叶子节点)

    背景说明 需求:MySQL树形结构, 根据指定的节点,获取其下属的所有子节点(包含路径上的枝干节点和叶子节点) 枝干节点:如果一个节点下还有子节点,则为枝干节点. 叶子节点:如果一个节点下不再有子节点 ...

  6. MySQL 树形结构 根据指定节点 获取其所有叶子节点

    背景说明 需求:MySQL树形结构, 根据指定的节点,获取其下属的所有叶子节点. 叶子节点:如果一个节点下不再有子节点,则为叶子节点. 问题分析 1.可以使用类似Java这种面向对象的语言,对节点集合 ...

  7. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

  8. MYSQL索引结构原理、性能分析与优化

    [转]MYSQL索引结构原理.性能分析与优化 第一部分:基础知识 索引 官方介绍索引是帮助MySQL高效获取数据的数据结构.笔者理解索引相当于一本书的目录,通过目录就知道要的资料在哪里, 不用一页一页 ...

  9. Swift -运算符和循环结构

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #4dbf56 } p.p2 { margin: 0.0px 0. ...

随机推荐

  1. 第3节 storm高级应用:2、storm与hdfs的整合工程环境准备;3、整合代码开发

    ======================================== 3.  storm与hdfs的整合使用 3.1.功能需求: 实现随机发送订单数据,从计算订单的总金额,然后将订单中的数 ...

  2. Linux查看某个文件 单个字符的 个数

    查看 *****.gz 文件下的 'Cm  Dn' 单词有多少个 cat *******.gz |grep 'Cm Dn' |wc -l

  3. linux vsftpd 550 create directory operation failed解决方法

    今天配置好了vsftp, 但登陆后,除了浏览,什么也干不了.(如新建文件/文件夹, 删除文件, 重命名等都不可操作) 都是弹出 "550 create directory operation ...

  4. MySQL日常使用笔记

    逍遥山人的MySQL使用笔记,持续更新中 表结构 新建表以及添加表和字段的注释 create table t_user( ID INT(11) primary key auto_increment c ...

  5. 树莓派开启VNC远程桌面

    分类: Raspberry Pi Linux2013-03-12 10:18 4288人阅读 评论(1) 收藏 举报   目录(?)[+]   1.安装VNC sudo apt-get install ...

  6. 16 SQL Mode

    1.SQL Mode解决的问题:     a.通过设置SQL Mode , 可以完成不同严格程度的数据校验,有效地保障数据准确性.     b.通过设置SQL Mode 为ANSI模式,来保证大多数S ...

  7. (转)浅谈 Linux 内核无线子系统

    前言 Linux 内核是如何实现无线网络接口呢?数据包是通过怎样的方式被发送和接收呢? 刚开始工作接触 Linux 无线网络时,我曾迷失在浩瀚的基础代码中,寻找具有介绍性的材料来回答如上面提到的那些高 ...

  8. c/c++ 获取BMP文件信息

    #include <stdio.h> #include <string.h> typedef struct BITMAPFILEHEADER { // BMP文件头 u_int ...

  9. PAT (Advanced Level) 1124~1127:1124模拟 1125优先队列 1126欧拉通路 1127中序后序求Z字形层序遍历

    1124 Raffle for Weibo Followers(20 分) 题意:微博抽奖,有M个人,标号为1~M.从第S个人开始,每N个人可以获奖,但是已获奖的人不能重复获奖,需要跳过该人把机会留给 ...

  10. push 和 append 以及appendchild 用法和区别

    push() 给数组添加元素,并且返回数组长度 如 : arr.push('a') append() 是jq写法,添加节点到指定父级节点的子节点列表末尾 appendchild() 是append原生 ...