是否可以计算Mysql中两个时间戳之间的差异,并以秒为单位获得输出结果?比如2010-11-29 13:16:55-2010-11-29 13:13:55应该是180秒.

非常感谢.

推荐答案

从1970年1月1日开始,使用UNIX_TIMESTAMP function将日期时间转换为秒值:

SELECT UNIX_TIMESTAMP('2010-11-29 13:16:55') - UNIX_TIMESTAMP('2010-11-29 13:13:55') as output

结果:

output
-------
180

如果你不确定哪个值比另一个值大,一个简单的方法就是使用ABS function:

SELECT ABS(UNIX_TIMESTAMP(t.datetime_col1) - UNIX_TIMESTAMP(t.datetime_col2)) as output

Mysql相关问答推荐

MySQL InnoDB:可以在没有回滚损失的情况下从运行的查询中进行大型插入吗

使用MySQL工作台导出具有数据的数据库表并导入到其字段具有不同数据类型的同一表中

SQL/Pyspark -判断条件

递归查询意外地为一个字段返回空值

Mysql-查找缺少列的表

亚马逊RDS MySQL-无法';t执行';使用读取锁定刷新表';

为什么 MAX 函数通过调用在 group 中生成正确的结果

SQL 查询仅当成员共享确切值时才 Select 成员对

MySQL 使用了错误的索引

MySQL查询以获取日期范围内的租赁订单

用数字和字母对 VARCHAR 列进行排序

插入重复键查询以在每一行上进行自定义更新

MYSQL 或 Laravel Eloquent 如何从这个订单中统计细节

我将如何构建一个 SQL 查询来从交易表中 Select 第一次存款、第二次存款和额外存款

Laravel classloader.php 错误打开流失败:没有这样的文件或目录

不正确的整数(2147483647)被插入到 MySQL 中?

为什么数据库行元组中的整数具有L后缀?

基于字符串动态创建 PHP 对象

在网页的 HTML 表中显示 MySQL 数据库表中的值

AWS RDS 实例升级停机时间