在mysql中,這種計算可用TIMESTAMPDIFF函式來解決,但是解決過程中需要將資料多次加工。
1、建立測試表及插入測試資料:
create table test
(time1 datetime,
time2 datetime)
insert into test values ("2015-04-03 17:01:09","2015-06-03 22:09:30")
2、目前要結算time2和time1的時間差,用如下語句:
select round(TIMESTAMPDIFF(second,time1,time2)/3600,2) from test
解讀:
首先,先用
select TIMESTAMPDIFF(second,time1,time2) from test
來計算兩個時間之間的秒數差。
然後,得到的結果除以3600,即為這兩個時間之間的小時數。
最後因為要求保留2位小數,則透過round函式,四捨五入,取出2位小數即可。
在mysql中,這種計算可用TIMESTAMPDIFF函式來解決,但是解決過程中需要將資料多次加工。
1、建立測試表及插入測試資料:
create table test
(time1 datetime,
time2 datetime)
insert into test values ("2015-04-03 17:01:09","2015-06-03 22:09:30")
2、目前要結算time2和time1的時間差,用如下語句:
select round(TIMESTAMPDIFF(second,time1,time2)/3600,2) from test
解讀:
首先,先用
select TIMESTAMPDIFF(second,time1,time2) from test
來計算兩個時間之間的秒數差。
然後,得到的結果除以3600,即為這兩個時間之間的小時數。
最後因為要求保留2位小數,則透過round函式,四捨五入,取出2位小數即可。