摘要:
mysql两个时间(我有两个字段是datetime类型)相减返回两个时间的小时差,精确到小数点后两位应该怎么写?在mysql中,这种计算可用TIMESTAMPDIFF函数来解决,但...
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位小数即可。