我进行了搜索,但是仍然找不到在MySQL存储过程中比较年份的正确方法,并且它总是永远循环。这是我的代码:
BEGIN
DECLARE date_ DATE;
DECLARE year_ YEAR DEFAULT in_year;
SET date_ = MAKEDATE(in_year, 1);
WHILE (year_ = in_year) DO
--
-- some working code
--
SET date_ = ADDDATE(date_, 1);
SET year_ = YEAR(date_);
END WHILE;
END;
当year_
增加并且不等于in_year
时,循环应结束。有什么解决办法吗? in_year
来自函数参数。
答案 0 :(得分:0)
最后找到了一个可行的替代方案:
WHILE (year_ - in_year = 0) DO