最无奈的莫过于不上班还要加班调bug,而最近也有了更多的空闲时间,记录貌似成为了日常。
今天的bug涉及到的是计算时间差并更新时间,所以就从这里开始吧。
一、计算时间差
1.两个日期相差的年份
第一种写法:
select floor(to_number(sysdate-to_date(‘2012-11-11 15:55:03’,‘yyyy-mm-dd hh24:mi:ss’))/365) as Years from dual
第二种写法:
select floor((months_between(sysdate,to_date('2012-11-11','yyyy-mm-dd hh24:mi:ss')))/12) as Years from dual
2.两个日期相差的月份
select ceil(months_between(sysdate,to_date('2018-11-22 15:55:03','yyyy-mm-dd hh24:mi:ss'))) as Mont from dual
3.两个日期相差的天数
select floor(to_number(sysdate-to_date('2018-11-22 15:55:03','yyyy-mm-dd hh24:mi:ss'))) as Days from dual
4.两个日期相差的小时数
select floor(to_number(sysdate-to_date('2018-11-22 15:55:03','yyyy-mm-dd hh24:mi:ss'))*24) as Hours from dual
当前时间:
5.两个日期相差的分钟数
select floor(to_number(sysdate