0

在我的 mysql 表中,有列 startYear、startMonth、endYear、endMonth 都是整数(int)。在那里我存储了起始年份和月份,以及结束年份和月份。例如,我想存储我的汽车分期付款的持续时间,所以 startYear 会有 2012,startMonth 会有 8,endYear 会有 2019,endMonth 会有7

好的,因为现在实际的当前月份是 9 (九月)和 2013 年,我检查当前月份和年份是否在 startYear、startMonth 和 endYear、endMonth 内的最佳方法/查询是什么?

4

2 回答 2

0

尝试这个:

CURDATE() BETWEEN CONCAT_WS('-', startYear, startMonth, '01')
                  AND CONCAT_WS('-', endYear, endMonth, '31');
于 2013-09-05T18:20:02.620 回答
0

BETWEEN将检查值是否大于或等于第一个数字,并且小于或等于第二个数字。

IF (MONTH(CURDATE()) BETWEEN startMonth and endMonth) AND (YEAR(CURDATE()) BETWEEN startYear and endYear))
于 2013-09-05T17:37:52.767 回答