检查mysql持续时间的最佳方法

时间:2013-09-05 17:34:48

标签: php mysql

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

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

2 个答案:

答案 0 :(得分:0)

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

IF (MONTH(CURDATE()) BETWEEN startMonth and endMonth) AND (YEAR(CURDATE()) BETWEEN startYear and endYear))

答案 1 :(得分:0)

试试这个:

CURDATE() BETWEEN CONCAT_WS('-', startYear, startMonth, '01')
                  AND CONCAT_WS('-', endYear, endMonth, '31');