存储过程内基础语法---补充while循环
1.基础语法
while循环初始化语句;WHILE 条件判断语句 DO循环体语句;条件控制语句;END WHILE;
2.举例
计算1~100之间的偶数和
【注:num只能num=num+1 不能num++,num+=1; 】
<1>存储过程内部查询
DELIMITER $CREATE PROCEDURE pro_test6()
BEGIN-- 定义求和变量DECLARE result INT DEFAULT 0;-- 定义初始化变量DECLARE num INT DEFAULT 1;-- while循环WHILE num<=100 DOIF num%2 =0 THENSET result =result +num;END IF;SET num =num +1;END WHILE;-- 查询求和结果SELECT result;
END $DELIMITER ;
-- 调用pro_test6存储过程
CALL pro_test6();
<2>存储过程外部查询,并将结果返回【定义输入输出参数】
- 方法一:定义初始变量,将值赋给输出参数
DELIMITER $CREATE PROCEDURE pro_test7(IN n INT ,OUT SUM INT ) -- (形参,返回值)
BEGIN-- 定义求和变量DECLARE result INT DEFAULT 0;-- 定义初始化变量DECLARE num INT DEFAULT 1;-- while循环WHILE num<=n DOIF num%2 =0 THENSET result =result +num;END IF;SET num =num +1;END WHILE;-- 查询求和结果SET SUM =result;
END $DELIMITER ;-- 调用pro_test7存储过程
CALL pro_test7(10,@sum) ;
SELECT @sum ;
- 方法二:IFNULL(SUM,0)函数给输出函数初始化赋值
DELIMITER $CREATE PROCEDURE pro_test8(IN n INT ,OUT SUM INT ) -- (形参,返回值)
BEGIN-- 定义求和变量DECLARE num INT DEFAULT 1;-- while循环WHILE num<=n DOIF num%2 =0 THEN-- SET SUM =SUM +num;SET SUM =IFNULL(SUM,0) +num; -- 方法1END IF;SET num =num +1;END WHILE;END $DELIMITER ;-- 调用pro_test8存储过程
CALL pro_test8(10,@sum) ;
SELECT @sum ;
- 方法三:IF SUM IS NULL THEN
SET SUM =0;
END IF;
在while循环对输出参数加非空判断
DELIMITER $CREATE PROCEDURE pro_test9(IN n INT ,OUT SUM INT ) -- (形参,返回值)
BEGIN-- 定义求和变量DECLARE num INT DEFAULT 1;IF SUM IS NULL THENSET SUM =0;END IF; -- 方法2-- while循环WHILE num<=n DOIF num%2 =0 THENSET SUM =SUM +num;END IF;SET num =num +1;END WHILE;END $DELIMITER ;-- 调用pro_test9存储过程
CALL pro_test9(10,@sum) ;
SELECT @sum ;
- 方法四:SET @sum=0 ;在调用方法时,给输出参数设置初始参数
DELIMITER $CREATE PROCEDURE pro_test10(IN n INT ,INOUT SUM INT ) -- (形参,返回值)-- 方法3
BEGIN-- 定义求和变量DECLARE num INT DEFAULT 1;-- while循环WHILE num<=n DOIF num%2 =0 THENSET SUM =SUM +num;END IF;SET num =num +1;END WHILE;END $DELIMITER ;-- 调用pro_test7存储过程
SET @sum=0 ;
CALL pro_test7(10,@sum) ;
SELECT @sum ;
3.方法查询结果
存储过程内基础语法---补充while循环相关推荐
- 第三次学JAVA再学不好就吃翔(part13)--基础语法之while循环语句
学习笔记,仅供参考 文章目录 JAVA基础语法 while语句 do...while语句 JAVA基础语法 while语句 格式 初始化语句; while(判断条件语句) {循环体语句;控制条件语句; ...
- 第三次学JAVA再学不好就吃翔(part12)--基础语法之for循环语句
学习笔记,仅供参考 JAVA基础语法 for循环语句 格式 for(初始化表达式;条件表达式;循环后的操作表达式) {循环体;} 执行流程 ①执行初始化表达式: ②执行条件表达式,看其返回值是true ...
- oracle存储过程(基础语法)
1.存储过程的定义 存储过程(Stored Procedure )是一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中.用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它 ...
- 语句中如何结束本循环进入下一循环_Python3基础语法(八)--控制循环 while...
一.while 简介 Python 的循环有 for 和 while 两种,while 为条件控制循环,通过循环控制条件表达式控制循环结束. 流程图如下: Python 中 while 语句的格式如下 ...
- python输入两个列表a和b、利用内置函数zip()_2nd Python基础语法
第二章 基础语法的补充拓展 2.1 关于变量的机制 2.1.1 变量的创建和修改 当Python创建一个变量时,我们假设是name,赋值为zm,变量的值(zm)就会存储在计算机的内存中,而该变量的变量 ...
- 第三次学JAVA再学不好就吃翔(part14)--基础语法之循环语句注意事项
学习笔记,仅供参考 文章目录 JAVA基础语法 for, while, do...while的区别 死循环 循环嵌套 JAVA基础语法 for, while, do-while的区别 do-while ...
- antd 判断input输入内容是否大于_Python基础语法 | 代码规范amp;判断语句amp;循环语句...
Python基础语法 代码的执行顺序 从上到下 从左到右 代码规范 模块名,包名,普通数据量一般小写字母,多个单词之间用 _ 连接 不要用系统定义的名称,具有特殊意义的表示符,如:doc,txt之类的 ...
- python语句块规范_Python基础语法——代码规范判断语句循环语句
Python基础语法 代码的执行顺序从上到下 从左到右 代码规范模块名,包名,普通数据量一般小写字母,多个单词之间用 _ 连接 不要用系统定义的名称,具有特殊意义的表示符,如:doc,txt之类的 每 ...
- C++ C++基础语法入门总结(二)引用-内联函数-C++11新特性
C++基础语法入门总结 C++引用 再谈引用和指针 C++内联函数 附加C++11新特性 auto关键字 基于范围的for循环 指针空值nullptr C++引用 引用:就是某一变量(目标)的一个别名 ...
最新文章
- python turtle基本语法_Python 基础语法-turtle篇
- 【工作感悟】mysql授权root远程访问
- 优化你的DiscuzNT3.0,让它跑起来(4)asp.net 缓存和死锁
- 2021十大金融科技趋势
- java播放声音类和一个简单示例
- 谷歌不是 Web 界的上帝!
- 最简单的视频编码器:基于libx264(编码YUV为H.264)
- VSCode离线汉化教程
- 研发体系核心代码和文档安全保护方案
- 矩阵卷积运算的三种方式及C语言实现
- 怎样从一个手机上安两个不同版本的软件_怎么在一部手机上安装两个不同版本的微信?...
- redis之AOF和RDB持久化
- 2021第五届航交会暨全球物流博览会向航运物流产业链人士发出邀约!金秋十月,共聚宁波!
- Vue笔记 (二) 如何做移动端适配 让你只用关心设计稿
- 8月1日任务 11.14-11.17
- java分子分母的加减乘除_JAVA实现精确的加减乘除代码
- 复旦提出ObjectFormer,收录CVPR 2022!图像篡改检测新工作!
- vue中el-dialog弹窗关闭,子组件控制父组件
- Tailwind Spacing
- CSS样式表的引入方式