`

Mysql那些事儿之(十五)流程的控制

阅读更多

IF语句

---语法结构
IF search_condition THEN statement_list
	[ELSEIF search_condition THEN statement_list]....
        [ELSE statement_list]
END IF

---举例
if i_staff_id = 2 then
  set @x1 = @x1 + d_amount;
else
  set @x2 = @x2 + d_amount;
end if;

CASE语句

---CASE语句的语法格式
CASE case_value
	WHEN when_value THEN statement_list
	[WHEN when_value THEN statement_list]....
	[ELSE statement_list]
END CASE

---case语句举例:
case
  when i_staff_id = 2 then 
    set @x1 = @x1 + d_amount;
  else
    set @x2 = @x2 + d_amount;
end case

 LOOP语句

[begin_label:] LOOP
	statement_list
END LOOP [end_label]
---如果不在statement_list中增加退出循环的语句,那么LOOP语句可以用来实现简单的死循环。

 LEAVE语句

---将结束符替换为$$
delimiter $$
---创建存储过程
CREATE PROCEDURE actor_num()
BEGIN
  set @x = 0;
  ins:LOOP
    set @x = @x + 1;
    IF @x = 100 THEN
      leave ins;
    END IF;
    INSERT INTO actor(first_name,last_name) VALUES('TEST',222);
  END LOOP ins;
END;
$$
delimiter ;

 ITERATE语句

--必须用在循环中,作用就是跳过当前的循环直接进入下一轮循环。
delimiter $$
CREATE PROCEDURE actor_num()
BEGIN
  set @x = 0;
  ins:LOOP
    set @x = @x + 1;
    IF @x = 100 THEN
      leave ins;
    ELSEIF mod(@x/2,0) = 0 THEN
      iterate ins;
    END IF;
    INSERT INTO actor(first_name,last_name) VALUES('TEST',222);
  END LOOP ins;
END;
$$
delimiter ;

 REPEAT 语句

--有条件循环,当满足条件的时候退出循环。
--语法:
[begin_label:] REPEAT
	statement_list
UNTIL search_condition
END REPEAT [end_label]
--举例
REPEAT
FETCH cur_payment INTO i_staff_id,d_amount;
  if i_staff_id = 2 then
    set @x1 = @x1 + d_amount;
  else
    set @x2 = @x2 + d_amount;
  end if;
UNTIL 0 END REPEAT;

 WHILE 语句

---语法结构
[begin_label:] WHILE search_condition DO
	statement_list
END WHILE [end_label]

 

分享到:
评论

相关推荐

    MySQL数据库:流程控制语句while语句.pptx

    流程控制语句WHILE循环语句 课程目标 1)理解 —— WHILE循环语句的语法规则 2)掌握 —— WHILE循环语句的使用方法 WHILE循环语句 MySQL支持3条用来创建循环的语句:WHILE、REPEAT和LOOP语句。 WHILE语句语法格式为...

    MySQL数据库:流程控制语句loop.pptx

    流程控制语句LOOP语句 课程目标 1)理解 —— LOOP语句的语法规则; 2)掌握 ——LOOP语句的使用方法; LOOP语句 LOOP语句语法格式如下: [begin_label:] LOOP statement_list END LOOP [end_label] 说明:LOOP允许...

    Mysql查询流程分析

    ### MySQL查询流程分析 在深入理解MySQL查询流程之前,我们首先需要明确几个基本概念:MySQL是一种关系型数据库管理系统,它支持SQL(Structured Query Language)语言,用于管理存储在表格中的数据。MySQL查询流程...

    mysql5.7.20安装流程

    MySQL 5.7.20的安装流程可以按照以下步骤进行,以下是一个清晰、分点归纳的指南: 1. 下载MySQL 5.7.20 访问MySQL官网:前往MySQL的官方网站,选择下载页面。 选择版本:在下载页面中找到MySQL 5.7.20版本,并根据...

    MySql的安装与配置流程

    ### MySQL的安装与配置流程详解 #### 一、MySQL简介 MySQL是一款开源的关系型数据库管理系统,因其性能稳定、易于使用等特点被广泛应用于Web应用开发。本文将详细介绍MySQL在Windows环境下的安装与配置流程。 ###...

    新版 MySQL DBA 高级视频 基于MySQL 5.7 MySQL 8.0版本.rar

    │ 第十五课MySQL8.0高可用架构之MHA和MMM.pdf │ 第十五课MySQL高可用架构之MHA和MMM.pdf │ 第十八课mongo分享-张亚V1.pdf │ 第十六课Redis分享-张亚V2.pdf │ 第十四课MySQL8.0高可用架构之Atlas.pdf │ 第十课...

    java 流程控制 工作流引擎,mysql数据库

    数据库是MYSQL的,请把DATA下面的workflow库文件之间拷贝在MYSQL的数据DATA目录下面 代码包是FOR ECLIPSE的,请把代码包直接解压缩到任意目录下,如果出现LIB库文件错误,请修改代码包的资源文件和地址配置文件

    AqingCyan#MySql_Learning#07_流程控制函数1

    流程控制函数- 三个参数,类似于三元运算符- 第一个参数作为判断条件- 第二个参数是判断条件为真执行- 第三个参数是判断条件为假执行案例:查询是否有奖金CASE

    mysql深度学习者 MySQL架构与SQL执行流程

    MySQL 架构与 SQL 执行流程深入浅出 MySQL 架构与 SQL 执行流程是 MySQL 数据库的核心组件,它们之间的交互关系决定了 MySQL 数据库的性能和可靠性。本篇文章将深入浅出 MySQL 架构和 SQL 执行流程,帮助读者更好...

    spring+spring mvc+mybatis+mysql+dubbo整合开发任务流程后台管理系统

    总结来说,这个项目利用了Spring、Spring MVC、MyBatis、MySQL和Dubbo这五种关键技术,构建了一个功能完备、易于扩展的后台管理系统,适合处理复杂的业务逻辑和数据操作,同时保证了服务的高可用性和性能。...

    osworkflow eclipse+mysql 请假审批流程 完整示例

    本文将详细介绍如何在Eclipse环境中利用osworkflow实现一个基于MySQL的请假审批流程的完整示例。 osworkflow是由Active Support公司开发的一款工作流引擎,它提供了丰富的API接口和工作流定义语言,使得开发者可以...

    mysql密码重置流程

    MySQL密码重置流程是数据库管理员在忘记或需要更改root用户密码...此外,为了系统安全,避免长时间保持`skip-grant-tables`状态,因为这会使MySQL服务器失去对用户访问的控制。一旦密码重置完成,应立即移除这个选项。

    最新版MySQL DBA全套教程.rar

    第十五课MySQL8.0高可用架构之MHA和MMM.pdf 第十五课MySQL高可用架构之MHA和MMM.pdf 第十八课mongo分享-张亚V1.pdf 第十六课Redis分享-张亚V2.pdf 第十四课MySQL8.0高可用架构之Atlas.pdf 第十课MySQL8.0锁...

    mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册

    mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册mysql手册...

    mysql执行完整流程

    mysql执行完整流程

    mysql_5.6主从热备流程

    mysql主从热备

    远程连接MySQL速度慢的解决方法以及MySQL解析DNS的流程图[附PDF下载]

    在深入探讨解决远程连接MySQL速度慢的问题之前,我们首先需要了解MySQL数据库服务器在解析域名时的一般流程。MySQL在处理远程连接时,会尝试将提供的主机名解析为IP地址,这一过程通常涉及DNS(域名系统)查询。这个...

    zabbix 5.0 mysql 数据库分表操作详细流程

    其中有每个命令的使用说明与注释。并增加了清理数据的方式。以及导入输入的注意事项

    python控制MySQL写入写出

    可以用python接收传感器串口数据,将数据传入本地MySQL或者云端MySQL

    MYSQL

    6.7 存取控制,阶段1:连接证实 6.8 存取控制,阶段2:请求证实 6.9 权限更改何时生效 6.10 建立初始的 MySQL权限 6.11 向MySQL增加新用户权限 6.12 怎样设置口令 6.13 存取拒绝(Access ...

Global site tag (gtag.js) - Google Analytics