mysql存储过程中的嵌套循环 [英] Nested loop in mysql stored procedure

查看:312
本文介绍了mysql存储过程中的嵌套循环的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在存储过程中有一个简单的嵌套 while 循环,但它给出了一个错误.循环没什么大不了的,只是为了学习目的,我创建了两个循环.

I am having a simple nested while loop in stored procedure , but it's giving an error. The loop does not nothing great, just for learning purpose i created two loops.

delimiter $$
create procedure getSum(in input int , out output int)
begin

set output = 0;
while input >= 1 do

  declare tmp int default 1;
  while tmp <= 5 do
      set  output = output + input ;
      set tmp = tmp + 1;
   end while ;

set input = input - 1 ;

end while;

end $$
delimiter ;

下面是错误

#1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以获取在declare tmp int default 1"附近使用的正确语法;while tmp <= 5 do set output = output + inpu' at line 7

谢谢.

推荐答案

试试这个:

delimiter $$
create procedure getSum(in input int , out output int)
begin
declare tmp int default 1;
set output = 0;
while input >= 1 do

  set tmp = 1;
  while tmp <= 5 do
      set  output = output + input ;
      set tmp = tmp + 1;
   end while ;

set input = input - 1 ;

end while;

end $$
delimiter ;

这篇关于mysql存储过程中的嵌套循环的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆