如何在MySQL中获取两个日期的月份差

Rav*_*jan 0 mysql

如何在MySQL中计算两个日期的月份差。

我试图得到两个日期的月份差,但没有。天。

select datediff('2014-10-17T00:00:00.000-07:00', '2015-02-06T00:00:00.000-08:00'); 
Run Code Online (Sandbox Code Playgroud)

Ros*_*ala 5

TIMESTAMPDIFF()

是您的解决方案。


语法将是

TIMESTAMPDIFF(unit, datetime_expr1, datetime_expr2);
Run Code Online (Sandbox Code Playgroud)

返回datetime_expr2 ? datetime_expr1,其中datetime_expr1datetime_expr2是日期或日期时间表达式。一个表达式可以是日期,另一个可以是日期时间。在必要时,将日期值视为具有时间部分“ 00:00:00”的日期时间。

〜MySQL :: MySQL 5.5参考手册:: 12.7日期和时间函数〜

的法律价值 unit

  • 微秒(微秒)
  • 第二
  • 分钟
  • 小时
  • 25美分硬币

例子

mysql> SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');
        -> 3
mysql> SELECT TIMESTAMPDIFF(YEAR,'2002-05-01','2001-01-01');
        -> -1
mysql> SELECT TIMESTAMPDIFF(MINUTE,'2003-02-01','2003-05-01 12:05:55');
        -> 128885
Run Code Online (Sandbox Code Playgroud)