mysql计算两个日期相减的方式

来源:互联网 发布:青果软件 刘萍 编辑:程序博客网 时间:2024/05/22 10:40

MySQL设置两个日期格式相减的方式:


原始数据表数据:



select (atime - btime) sec  from 数据表;

相减得到的并不是秒,特别需要注意!

结果:




mysql中计算两个Datetime类型的时间间隔(单位为秒),需要转换:
1.跨天,月,年都无问题
select (UNIX_TIMESTAMP(atime) - UNIX_TIMESTAMP(btime)) sec

from 数据表;





2.只能用在Time类型,跨天,月,年都有问题
select (TIME_TO_SEC(atime) - TIME_TO_SEC(btime)) sec

from 数据表;

select (TIME_TO_SEC(end_time) -TIME_TO_SEC(start_time)) sec from task_detail  where end_time is not null;

结果同上图所示;


修改数据:


update task_detail set end_time = now() where id = 8;


查询结果为负值,具体见截图:




故在做两个日期相减的时候,采用(TIME_TO_SEC(atime) - TIME_TO_SEC(btime)) sec 方式比较好。

原创粉丝点击