Oracle计算时间差表达式

Oracle计算时间差表达式

-- 获取两时间的相差豪秒数
select ceil((To_date( ' 2008-05-02 00:00:00 ' , ' yyyy-mm-dd hh24-mi-ss ' ) - To_date( ' 2008-04-30 23:59:59 ' , ' yyyy-mm-dd hh24-mi-ss ' )) * 24 * 60 * 60 * 1000 ) 相差豪秒数 FROM DUAL;
-- 获取两时间的相差秒数
select ceil((To_date( ' 2008-05-02 00:00:00 ' , ' yyyy-mm-dd hh24-mi-ss ' ) - To_date( ' 2008-04-30 23:59:59 ' , ' yyyy-mm-dd hh24-mi-ss ' )) * 24 * 60 * 60 ) 相差秒数 FROM DUAL;
-- 获取两时间的相差分钟数
select ceil(((To_date( ' 2008-05-02 00:00:00 ' , ' yyyy-mm-dd hh24-mi-ss ' ) - To_date( ' 2008-04-30 23:59:59 ' , ' yyyy-mm-dd hh24-mi-ss ' ))) * 24 * 60 )  相差分钟数 FROM DUAL;
-- 获取两时间的相差小时数
select ceil((To_date( ' 2008-05-02 00:00:00 ' , ' yyyy-mm-dd hh24-mi-ss ' ) - To_date( ' 2008-04-30 23:59:59 ' , ' yyyy-mm-dd hh24-mi-ss ' )) * 24 )  相差小时数 FROM DUAL;
-- 获取两时间的相差天数
select ceil((To_date( ' 2008-05-02 00:00:00 ' , ' yyyy-mm-dd hh24-mi-ss ' ) - To_date( ' 2008-04-30 23:59:59 ' , ' yyyy-mm-dd hh24-mi-ss ' )))  相差天数 FROM DUAL;
-- 获取两时间月份差
select (EXTRACT( year FROM to_date( ' 2009-05-01 ' , ' yyyy-mm-dd ' )) - EXTRACT( year FROM to_date( ' 2008-04-30 ' , ' yyyy-mm-dd ' ))) * 12 +   EXTRACT( month FROM to_date( ' 2008-05-01 ' , ' yyyy-mm-dd ' )) - EXTRACT( month FROM to_date( ' 2008-04-30 ' , ' yyyy-mm-dd ' )) months
-- 获取两时间年份差
select EXTRACT( year FROM to_date( ' 2009-05-01 ' , ' yyyy-mm-dd ' )) - EXTRACT( year FROM to_date( ' 2008-04-30 ' , ' yyyy-mm-dd ' )) years from dual;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/87010/viewspace-624727/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/87010/viewspace-624727/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值