一尘不染

MYSQL-日期时间到秒

mysql

我无法找出(谷歌,阅读mysql参考手册)如何 在几秒钟内在 MySQL中获取 DATETIME的 值。

我不是要从日期时间中提取秒,而是将其转换为秒。


阅读 568

收藏
2020-05-17

共1个答案

一尘不染

如果要使两个DATETIME值之间存在差异,请使用
TIMESTAMPDIFF

TIMESTAMPDIFF(单位,datetime_expr1,datetime_expr2)

返回datetime_expr2 – datetime_expr1,其中datetime_expr1datetime_expr2是日期或日期时间表达式。一个表达式可以是日期,另一个可以是日期时间。在必要时,将日期值视为具有时间部分“
00:00:00”的日期时间。结果的单位(整数)由unit参数指定。单位的合法值与TIMESTAMPADD()功能说明中列出的值相同。

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

unit也可以HOUR是您在其中之一中要求的内容。

unit参数可以是以下任意一个:

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

当然,其他一些选项的有用程度取决于数据的粒度。例如,如果您没有在DATETIME值中存储微秒,则“ MICROSECOND”的使用将受到限制。

2020-05-17