oracle计算时间差总和,oracle 时间差计算

oracle 时间差计算

1.months_between(date1,date2);date1 和 date2 相减得到相差的月份.

select months_between(to_date('2015-05-11','yyyy-MM-dd'),to_date('2015-04-11','yyyy-MM-dd')) from dual ; 相差一个月.

2.ceil(date1-date2);date1-date2 相减得到相差的天数

select ceil(To_date('2015-05-11 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2015-04-11 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') )from dual ; 相差 30 天.

3. 获取两时间相差的豪秒数 ceil((date1 - date2) * 24 * 60 * 60 * 1000)

select ceil((To_date('2015-05-11 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2015-04-11 23:59:59' , 'yyyy-mm-dd hh24-mi-ss')) * 24 * 60 * 60 * 1000) FROM DUAL;

4. 获取两时间相差的秒数 ceil((date1 - date2) * 24 * 60 * 60 )

select ceil((To_date('2015-05-11 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2015-04-11 23:59:59' , 'yyyy-mm-dd hh24-mi-ss')) * 24 * 60 * 60 ) FROM DUAL;

5. 获取两时间相差的分钟数 ceil((date1 - date2) * 24 * 60 )

select ceil((To_date('2015-05-11 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2015-04-11 23:59:59' , 'yyyy-mm-dd hh24-mi-ss')) * 24 * 60 ) FROM DUAL;

6. 获取两时间相差小时数 ceil((date1 - date2) * 24 )

select ceil((To_date('2015-05-11 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2015-04-11 23:59:59' , 'yyyy-mm-dd hh24-mi-ss')) * 24 ) FROM DUAL;

7. 其他

select sysdate,add_months(sysdate,12) from dual; -- 加 1 年

select sysdate,TO_CHAR(sysdate+1,'yyyy-mm-dd HH24:MI:SS') from dual; -- 加 1 天

select sysdate,TO_CHAR(sysdate+1/24,'yyyy-mm-dd HH24:MI:SS') from dual; -- 加 1 小时

select sysdate,TO_CHAR(sysdate+1/24/60,'yyyy-mm-dd HH23:MI:SS') from dual; -- 加 1 分钟

select sysdate,TO_CHAR(sysdate+1/24/60/60,'yyyy-mm-dd HH23:MI:SS') from dual; -- 加 1 秒

来源: http://www.bubuko.com/infodetail-3320152.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值