在MySQL while循环中比较年份

时间:2019-06-05 16:48:26

标签: mysql mariadb

我进行了搜索,但是仍然找不到在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来自函数参数。

1 个答案:

答案 0 :(得分:0)

最后找到了一个可行的替代方案:

WHILE (year_ - in_year = 0) DO