我會說明我想在下面的例子中得到:如何獲得四舍五入到個小時兩個日期之間的差異
'2010-09-01 03:00:00' - '2010-09-01 00:10:00'
使用TIMEDIFF()
,我們得到2結果。這意味着,它沒有考慮剩下的50分鐘。
在這種情況下,我想得到的是:50(分鐘)/ 60 = 0.83期間。因此,結果應該是2.83而不是2
我會說明我想在下面的例子中得到:如何獲得四舍五入到個小時兩個日期之間的差異
'2010-09-01 03:00:00' - '2010-09-01 00:10:00'
使用TIMEDIFF()
,我們得到2結果。這意味着,它沒有考慮剩下的50分鐘。
在這種情況下,我想得到的是:50(分鐘)/ 60 = 0.83期間。因此,結果應該是2.83而不是2
select time_to_sec(timediff('2010-09-01 03:00:00', '2010-09-01 00:10:00'))/3600;
+-----------------------------------------------------------------------------+
| time_to_sec(timediff('2010-09-01 03:00:00', '2010-09-01 00:10:00'))/3600 |
+-----------------------------------------------------------------------------+
| 2.8333 |
+-----------------------------------------------------------------------------+
+1:很好! – 2010-09-01 19:36:21
謝謝。這工作! – 2010-09-01 19:47:21
timediff解決方案有一個問題:它的值不能超過839小時(減1秒)。所以它將無法找到超過〜35天的差異 – 2014-12-18 19:17:08
它是一種非常古老的線程,但你也可以嘗試TIMESTAMPDIFF並給予分鐘,小時,秒爲預選賽。
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_timestampdiff
你可以嘗試以下方法:
time_format(timediff(max(l.fecha), min(l.fecha)),'%H:%m') //Hora y minutos
我認爲一個更完整的答案是
select time_format(timediff(onedateinstring,anotherdateinstring),'%H:%i:%s')
這可以讓你看到的時,分,秒等。你希望看到你想要的格式...
有關ti的更多信息me_format:http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_time-format
使用TIMESTAMPDIFF爲小時確切的數字:
SELECT
b.`Start_Date`,
b.`End_Date`,
TIMESTAMPDIFF(HOUR, b.`Start_Date`, b.`End_Date`) AS `HOURS`
FROM my_table b;
的MySQL得到的小時時間戳之間的數字:
select timestampdiff(second,'2010-09-01 00:10:00', '2010-09-01 03:00:00')/3600;
爲什麼不'timestampdiff(小時,'2010-09-01 00:10:00','2010-09-01 03:00:00')'? – codeforester 2017-12-14 22:23:59
它沒有考慮到會議紀要。你所建議的答案爲2,而上述解答爲2.83(0.83小時爲50分鐘的差值) – bangde 2017-12-15 09:53:37
如果使用時間戳,這可能是在溶液MySQL使用SQL。
SELECT TIMESTAMPDIFF(HOUR, '2010-11-29 13:13:55', '2010-11-29 13:16:55') as newtable;
| newtable |
7
1 row in set (0.01 sec)
您是否投射爲整數?你應該得到一個時間結果,如'2:50:00'。 – Matthew 2010-09-01 19:32:44