常用:
drop function total_even; --删除函数
show create function total_even; --展示函数
题目要求:
(6)创建函数,用两种不同的循环语句求50到指定整数中所有偶数的和。并调用函数观察执行结果。
我们先从求<50-n>所有数的和开始算!然后就发现了下面的问题
结论:情形2是正确的,但是不明所以,特存于此处
情形1:
delimiter //
create function total_even(limit_number int)
returns int
no sql
begin
declare j int default 50;
declare sum int default 0;
total:loop
set j = j+1;
set sum = sum + j;
if j>limit_number then
leave total;
end if;
end loop;
return sum;
end; //
delimiter ;
select total_even(100) as total_even; --调用函数
这样子的运行结果是这样的:
情形2:
delimiter //
create function total_even(limit_number int)
returns int
no sql
begin
declare j int default 50;
declare sum int default 0;
total:loop
if j > limit_number then
leave total;
end if;
set sum = sum + j;
set j = j + 1;
end loop;
return sum;
end //
delimiter ;
select total_even(100) as total_even; --调用函数
运行结果是这样的: