MySQL学习笔记:while循环
思考:while循环是否只能使用在存储过程或者存储函数之中,不能直接在查询语句中使用?
———— 循环一般在存储过程和存储函数中使用。
直接放几个例子:
例一:
1.创建存储过程
DELIMITER $$
CREATE PROCEDURE test_while_001(IN in_count INT) # 创建存储过程 学习while循环的用法
BEGIN
DECLARE COUNT INT DEFAULT 0;
DECLARE SUM INT DEFAULT 0;
WHILE COUNT < in_count DO
SET SUM = SUM + COUNT;
SET COUNT = COUNT + 1;
END WHILE;
SELECT SUM;
END $$
DELIMITER ;
2.调用存储过程
CALL test_while_001(10); # 45 输出
3.删除存储过程
DROP PROCEDURE test_while_001;
例二:
1.创建函数
DELIMITER $$
CREATE FUNCTION my_test_function(quantity INT(10)) RETURNS INT(10) # 创建函数 学习while循环的用法
BEGIN
WHILE quantity MOD 12 > 0 DO
SET quantity = quantity + 1;
END WHILE;
RETURN quantity;
END $$
DELIMITER ;
注意:创建函数之前必须更改系统设置 否则无法创建函数
SET GLOBAL log_bin_trust_function_creators=TRUE;
2.调用函数
SELECT my_test_function(10);
SELECT my_test_function(24);
SELECT my_test_function(222);
3.删除函数
DROP FUNCTION my_test_function;
例三:
1.如果存在,则删除
DROP PROCEDURE IF EXISTS u_head_and_low_pro;
2.创建存储过程
DELIMITER $$
CREATE PROCEDURE u_head_and_low_pro()
BEGIN
DECLARE n INT DEFAULT 10;
SET n = n - 1;
WHILE n > 0 DO
SELECT n;
SET n = n - 1;
END WHILE;
END $$
DELIMITER ;
3.调用存储过程
CALL u_head_and_low_pro();
4.删除存储过程
DROP PROCEDURE u_head_and_low_pro;
注:不依赖于任何数据库表,完整展示变量、while语句、存储过程的用法。
例四:
# 创建存储过程
DELIMITER $$
CREATE PROCEDURE test_while()
BEGIN
DECLARE SUM INT DEFAULT 0;
DECLARE t INT DEFAULT 5;
WHILE t > 0 DO
SET SUM = SUM + t;
SET t = t - 1;
END WHILE;
SELECT SUM;
END $$
DELIMITER ; # 调用存储过程
CALL test_while(); # 15 # 删除
DROP PROCEDURE test_while;
END 2018-05-22 13:11:34
MySQL学习笔记:while循环的更多相关文章
- MySQL学习笔记:循环生成5万行id连续的数据
# ---- mysql循环生成5万行id连续的数据 ---- /* id 1 2 3 4 …… */ CREATE TABLE tb( id ) NOT NULL AUTO_INCREMENT, V ...
- MySQL学习笔记-锁相关话题
在事务相关话题中,已经提到事务隔离性依靠锁机制实现的.在本篇中围绕着InnoDB与MyISAM锁机制的不同展开,进而描述锁的实现方式,多种锁的概念,以及死锁产生的原因. Mysql常用存储引擎的锁 ...
- 数据库MySQL学习笔记高级篇
数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...
- 一千行MySQL学习笔记 (转)
出处: 一千行MySQL学习笔记 /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权 ...
- mysql basic operation,mysql总结,对mysql经常使用语句的详细总结,MySQL学习笔记
mysql> select * from wifi_data where dev_id like "0023-AABBCCCCBBAA" ; 1.显示数据库列表.show d ...
- Mysql学习笔记(三)对表数据的增删改查。
正文内容. 这一部分是最简单的,也是最麻烦的.简单是因为其实只包括增删该插四个部分.大体上看,增加数据.删除数据.修改数据.查询数据都不麻烦啊,我们日常都是常用的.这个谁不会呢?以前在培训机构学mys ...
- MySQL学习笔记一
MySQL 学习笔记 一 一.数据库简单介绍 1. 按照数据库的发展时间顺序,主要出现了以下类型数据库系统: Ø 网状型数据库 Ø 层次型数据库 Ø 关系型数据库 Ø 面向对象数据库 上面4中数据库系 ...
- Mysql学习笔记(二)数据类型 补充
原文:Mysql学习笔记(二)数据类型 补充 PS:简单的补充一下数据类型里的String类型以及列类型... 学习内容: 1.String类型 2.列类型存储需求 String类型: i.char与 ...
- Mysql学习笔记(一)数据类型
原文:Mysql学习笔记(一)数据类型 学习内容: Mysql基本数据类型. 1.数字类型.. i.整型 Mysql数据类型 含义(有符号) tinyint(m ...
- 初识mysql学习笔记
使用VMVirtualBox导入Ubuntu后,可以通过sudo apt-get install mysql-server命令下载mysql. 在学习过程中,我遇到了连接不上Xshell的问题.最终在 ...
随机推荐
- opencv 应用程序无法正常启动(0xooooo7b)
#include<iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui ...
- Django JSON 时间
在views.py中导入: from django.core.serializers.json import DjangoJSONEncoder 在返回JSON数据时调用: return HttpRe ...
- Chapter4(表达式) --C++Prime笔记
1.重载运算符:为已经存在的运算符赋予另外一层含义. 2.左值与右值: ①当一个对象被用作右值的时候,用的是对象的值(内容):当一个对象被用作左值的时候,用的是对象的身份(在内存中的位置). ②在 ...
- 逻辑回归--美国挑战者号飞船事故_同盾分数与多头借贷Python建模实战
python信用评分卡(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_camp ...
- [Luogu 3128] USACO15DEC Max Flow
[Luogu 3128] USACO15DEC Max Flow 最近跟 LCA 干上了- 树剖好啊,我再也不想写倍增了. 以及似乎成功转成了空格选手 qwq. 对于每两个点 S and T,求一下 ...
- Java并发编程原理与实战二十一:线程通信wait¬ify&join
wait和notify wait和notify可以实现线程之间的通信,当一个线程执行不满足条件时可以调用wait方法将线程置为等待状态,当另一个线程执行到等待线程可以执行的条件时,调用notify可以 ...
- 20155315 2016-2017-2 《Java程序设计》第六周学习总结
教材学习内容总结 第10章 输入与输出 1.串流设计的概念 从应用程序角度看,将数据从来源取出,可以使用输入串流,将数据写入目的地,可以使用输出串流:在Java中,输入串流代表对象为java.io.I ...
- java矩阵包jama的简单操作
本文转自http://www.cnblogs.com/zangbo/p/5622351.html 一.jama简介 Jama是一个基本的线性代数java包.包括一个基本的Matrix类和5个矩阵分解类 ...
- Unity3D 程序打包报错(程序是连接数据库进行处理的)
打包这个Unity3D的程序时出现错误(程序是由XML数据改成连接数据库): ArgumentException: The Assembly System.Configuration is refer ...
- [转] A*寻路算法C++简单实现
参考文章: http://www.policyalmanac.org/games/aStarTutorial.htm 这是英文原文<A*入门>,最经典的讲解,有demo演示 http: ...