2013-06-03 21 views
0

我有这样的表称为记录:如何找到两个日期的总小时数在MySQL查询

+---------------------+---------------------+ 
| date_returned  | date_borrowed  | 
+---------------------+---------------------+ 
| 2013-05-31 09:27:38 | 2013-05-31 08:48:14 | 
| 2013-05-31 09:22:27 | 2013-05-31 08:53:06 | 
| 2013-05-31 09:27:38 | 2013-05-31 09:22:35 | 
| 2013-05-31 15:27:02 | 2013-05-31 09:22:39 | 
| 2013-05-31 15:27:02 | 2013-05-31 10:04:22 | 
+---------------------+---------------------+ 

我想包括总小时数作为结果的另一列。 我阅读了手册,但是datediff看起来很模糊,只是将差异作为天返回。

+2

这将是我们更容易帮助你,如果你设置了[SQL小提琴(http://sqlfiddle.com/) –

回答

3

尝试:

SELECT 
    TIMEDIFF(date_borrowed, date_returned) AS diff 
FROM 
    tablename 
2

如何转换为时间戳值 - 这会让你减去获得在几秒钟的差别,你可以从那里操作,只要你想尽可能多。

SELECT 
    date_returned, 
    date_borrowed, 
    (UNIX_TIMESTAMP(date_returned) - UNIX_TIMESTAMP(date_borrowed))/3600 AS hours 
FROM tablename 
3
SELECT 
    HOUR(TIMEDIFF(date_borrowed, date_returned)) as TotalHours 
FROM 
    tablename