TIMESTAMPDIFF给出意想不到的结果

时间:2016-02-24 15:18:45

标签: mysql

为什么

TIMESTAMPDIFF(MONTH, '2015-12-25', '2016-02-24')
给我一个?我希望2016-01-25为1。

我的猜测是它实际上已经返回了1.999个月的时间,而且它正在简单地向下舍入。

我该如何解决这个问题?或者还有其他功能可供使用。

我尝试了PERIOD_DIFF,但没有考虑天数

PERIOD_DIFF(DATE_FORMAT('2016-02-24','%Y%m'),DATE_FORMAT('2015-12-25','%Y%m'))

1 个答案:

答案 0 :(得分:1)

根据documentation,结果的单位是整数,在您的情况下,它将返回两个日期之间的整数月份,即一(因为第二个月尚未完成)