Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我已经将我的Mysql版本从Mysql5.0升级到了Mysql5.5,
这是查询返回null,但相同的查询在升级之前返回值。
null
SELECT DATE_FORMAT(DATE_ADD(STR_TO_DATE('2010-04', '%Y-%m'), INTERVAL 2 YEAR),'%Y-%m')
应该返回2012-04
2012-04
我的日期值是varchar我想添加 2 年间隔的类型。
varchar
有没有其他方法可以实现这一点或请告诉我如何纠正它?
如果格式说明符不是格式字符串输入中的最后一个说明符,Mysql version > 5.0str_to_date()有时会返回。NULL%D
str_to_date()
NULL
%D
您需要应用一些技巧(%D在此处指定)。
试试下面:
SELECT DATE_FORMAT(DATE_ADD(STR_TO_DATE('2010-04-01', '%Y-%m-%d'), INTERVAL 1 YEAR),'%Y-%m')