SQL中的datetime数据之间的区别

时间:2016-10-21 02:48:19

标签: mysql sql

如何在MySQL数据库中找到两个dateTime存储之间的区别 例如2016-03-09 04:30:00和2016-03-10 03:00:00之间的小时差异。 我已经尝试过dateDiff(),但它没有比较需要查看(2016-03-09 04:30:00) - (2016-03-10 03:10:00)之间差异的小时数。 订单是年 - 月 - 日时间

Structure of database

我需要的输出是这些时间之间的小时数,也考虑了时间。

2 个答案:

答案 0 :(得分:1)

您可以使用TIMESTAMPDIFF查找两个时间戳之间的差异

SELECT TIMESTAMPDIFF(HOUR,'2009-05-18 10:00','2009-05-18 11:00'); 

如果您想要分数(例如:1.5小时),您可以执行以下操作

SELECT (UNIX_TIMESTAMP('2012-10-30 10:40')-UNIX_TIMESTAMP('2012-10-30 10:30'))/3600 hour_diff

答案 1 :(得分:0)

一种简单的方法是使用to_seconds()

select to_seconds(dt1) - to_seconds(dt2)

这给出了秒的差异。然后你可以将60 * 60除以得到小时或24 * 60 * 60几天。