分享一个线上的bug,是有关mysql中的时间函数CURDATE()导致的,月底最后一天项目中的接口查不到数据,排查问题后发现是sql的中时间函数所导致,网上查了一些资料后才知道确定是有这个问题,比如:SELECT date_format(CURDATE() +1 , '%Y-%m-%d') from DUAL; sql中使用这个查到的是null,使用以下三种均可以查到:
第一种:select date_add(curdate(),interval +1 day) from DUAL;
第二种:select date_sub(curdate(),interval -1 day) from DUAL;
第三种:SELECT date_format(DATE_SUB(curdate(),INTERVAL -1 DAY),'%Y-%m-%d') from DUAL;
如图: