mysql 查詢兩個字段,我有兩個字段是datetime類型?
在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位小數即可。