mysql - 返回时间戳差异值

标签 mysql sql datetime

我不明白时间戳的差异以什么单位返回答案。

当我从列中选择 max(timestamp) 和 min(timestamp) 时,下面是我得到的值。

max(timestamp)                    
2017-08-31 05:43:45 

min(timestamp)
2017-08-31 05:36:13

但是下面的查询返回 732。

select max(timestamp) - min(timestamp) from <TABLE NAME>

但是,如果将时间戳放入 time_to_sec() 中,它会以秒为单位给出当前答案,即 452。那么我在这里缺少什么?

最佳答案

当您使用时间戳进行算术时,它首先将它们转换为数字形式YYYYMMDDHHMMSS。这就是 20170831054345 - 20170831053613,即 732

如果您希望结果为时间,请使用 TIMEDIFF功能。

select TIMEDIFF(max(timestamp), min(timestamp)) from <TABLE NAME>

关于mysql - 返回时间戳差异值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47217509/

相关文章:

mysql - mysql存储过程中的参数

mysql - 如何设计数据库来处理与单个主键相关的列中的多个值?

MySQL 使用 AND 语句查找重复记录

java - 使用可选部分通过 DateTimeFormatter 解析 "integer"时间

Python 日期字符串转换为类似 apache 的日期格式

mysql - SQL:匹配字符串模式而不考虑大小写,列中的空格

php - 如果插入是通过 AJAX 完成的,如何在 codeigniter session 中存储最后的插入 id?

mysql - 如何更改表的默认排序规则?

mysql - 如何使用 PHP 通过 SQL 插入 ID

mysql - 这个 MySQL Update 语句中的错误是什么?