在我的mysql表中,有列startYear,startMonth,endYear,endMonth,它们都是整数(int)。 在那里,我存储了开始年份和月份,以及结束年份和月份......例如,我想存储我的汽车分期付款的持续时间,所以开始年份会有 2012 年,开始月份会有 8 年,结束年份会有 2019 年, 月底将有 7
个好的,既然现在实际的当前月份是9(9月)和2013年,那么检查当前月份和年份是否在开始年份,开始月份和结束年份,结束月份的最佳方法/查询是什么?
BETWEEN 将检查值是否大于或等于第一个数字,以及小于或等于第二个数字。
IF (MONTH(CURDATE()) BETWEEN startMonth and endMonth) AND (YEAR(CURDATE()) BETWEEN startYear and endYear))
试试这个:
CURDATE() BETWEEN CONCAT_WS('-', startYear, startMonth, '01')
AND CONCAT_WS('-', endYear, endMonth, '31');