mysql 查詢?nèi)掌谥螅矣袃蓚€字段是datetime類型?
在mysql中,這種計算可用TIMESTAMPDIFF函數(shù)來解決,但是解決過程中需要將數(shù)據(jù)多次加工。
1、創(chuàng)建測試表及插入測試數(shù)據(jù):
create table test
(time1 datetime,
time2 datetime)
insert into test values ('2015-04-03 17:01:09','2015-06-03 22:09:30')
2、目前要結(jié)算time2和time1的時間差,用如下語句:
select round(TIMESTAMPDIFF(second,time1,time2)/3600,2) from test
解讀:
首先,先用
select TIMESTAMPDIFF(second,time1,time2) from test
來計算兩個時間之間的秒數(shù)差。
然后,得到的結(jié)果除以3600,即為這兩個時間之間的小時數(shù)。
最后因為要求保留2位小數(shù),則通過round函數(shù),四舍五入,取出2位小數(shù)即可。