
用时间戳来计算
SELECT (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP('2015-04-20 15:12:12'))/60
也就是得到两个时间相差的秒数,然后除60得到分种。
MySql计算两个日期的时间差函数TIMESTAMPDIFF用法:语法:
TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)
说明:
返回日期或日期时间表达式datetime_expr1
和datetime_expr2the
之间的整数差。其结果的
单位由interval
参数给出。interval
的法定值同TIMESTAMPADD()函数说明中所列出的相同。
复制代码
代码如下:
SELECT
TIMESTAMPDIFF(MONTH,'2009-10-01','2009-09-01')
interval可是:
SECOND
秒
SECONDS
MINUTE
分钟
MINUTES
HOUR
时间
HOURS
DAY
天
DAYS
MONTH
月
MONTHS
YEAR
年
YEARS
在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位小数即可。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)