各位大神麻烦看下 mysql 存储过程 into 失效 问题

tanfan520 2017-12-05 09:56:39
-- 以声明的 groupbuySum 变量为例 查询有数据 into 之后 值为0 我qq 177011712 答案 谭凡 跪求大神解救
CREATE PROCEDURE `init_president_day`(in startTimeV VARCHAR(30),in endTimeV VARCHAR(30))
begin

declare groupbuySum decimal(12,2);

declare vidtmp int(12);
declare startTime DATETIME DEFAULT DATE_FORMAT(startTimeV,'%Y%m%d');
declare endTime DATETIME DEFAULT DATE_FORMAT(endTimeV,'%Y%m%d');
declare startTimeStr VARCHAR(20);

-- 遍历数据结束标志
DECLARE done INT DEFAULT FALSE;
/* 声明游标 */
DECLARE rs CURSOR FOR SELECT vid FROM t_manager_village where vid=80;
-- 将结束标志绑定到游标
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
-- 打开游标
OPEN rs;


-- 遍历
read_loop: LOOP
-- 取值 取多个字段
FETCH NEXT from rs INTO vidtmp;
IF done THEN
LEAVE read_loop;
END IF;

-- 业务
set startTime =DATE_FORMAT(startTimeV,'%Y%m%d');

while startTime<endTime do
set startTimeStr =DATE_FORMAT(startTime,'%Y%m%d');
select ifnull(sum(sum),0) into groupbuySum from t_groupbuyorder where pay_time is not null and DATE_FORMAT(pay_time,'%Y%m%d')=startTimeStr and vid=vidtmp ;


set startTime=date_add(startTime, interval 1 day);
end while;
END LOOP;

CLOSE rs;
END
...全文
837 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
fanyuanwaifdl 2017-12-06
  • 打赏
  • 举报
回复
FETCH rs INTO vidtmp; 不是这样吗

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧