mysql-函数和流程控制的案例

题目:从1开始,直到用户传入的值为止,求和,除了5的倍数的数值不要

答案:

1.创建函数

2.需要一个形参,确定累加到什么位置

3.需要定义一个局部变量保存结果

4.内部需要定义一个循环来实现迭代累加

5.循环内部需要进行条件判断,5的倍数

--修改语句修饰符

delimiter $$

--创建函数

create function my_sum(end_value int) returns int

扫描二维码关注公众号,回复: 2628518 查看本文章

begin

--声明变量(局部变量),如果使用declare声明变量,必须在函数体其他语句之前

declare res int default 0;

declare i int default 1;

--循环处理

mywhile:while i<=end_value do

--判断当前数据是否合理

if i%5=0 then 

set  i = i+1;

iterate mywhile;

end if;

set res = res + i;     --mysql中没有++

set i = i + 1;

end while mywhile;

end

--结束

$$

--修改语句结束符

delimiter ;

猜你喜欢

转载自blog.csdn.net/shijiaolong0/article/details/81435198