`
chicony
  • 浏览: 122774 次
  • 性别: Icon_minigender_1
  • 来自: 孝感
社区版块
存档分类
最新评论

Oracle中计算时间差

阅读更多
在Oracle中计算时间差

计算时间差是Oracle DATA数据类型的一个常见问题。Oracle支持日期计算,你可以创建诸如“日期1-日期2”这样的表达式来计算这两个日期之间的时间差。


一旦你发现了时间差异,你可以使用简单的技巧来以天、小时、分钟或者秒为单位来计算时间差。为了得到数据差,你必须选择合适的时间度量单位,这样就可以进行数据格式隐藏。


使用完善复杂的转换函数来转换日期是一个诱惑,但是你会发现这不是最好的解决方法。

round(to_number(end-date-start_date))- 消逝的时间(以天为单位)

round(to_number(end-date-start_date)*24)- 消逝的时间(以小时为单位)

round(to_number(end-date-start_date)*1440)- 消逝的时间(以分钟为单位)


显示时间差的默认模式是什么?为了找到这个问题的答案,让我们进行一个简单的SQL *Plus查询。

SQL> select sysdate-(sysdate-3) from dual;

SYSDATE-(SYSDATE-3)

-------------------

3

这里,我们看到了Oracle使用天来作为消逝时间的单位,所以我们可以很容易的使用转换函数来把它转换成小时或者分钟。然而,当分钟数不是一个整数时,我们就会遇到放置小数点的问题。

Select
(sysdate-(sysdate-3.111))*1440
from
dual;

(SYSDATE-(SYSDATE-3.111))*1440

------------------------------

4479.83333

当然,我们可以用ROUND函数(即取整函数)来解决这个问题,但是要记住我们必须首先把DATE数据类型转换成NUMBER数据类型。

Select
round(to_number(sysdate-(sysdate-3.111))*1440)
from
dual;

ROUND(TO_NUMBER(SYSDATE-(SYSDATE-3.111))*1440)

----------------------------------------------

4480

0
0
分享到:
评论

相关推荐

    在Oracle9i中Oracle DATA计算时间差

    本文介绍了在Oracle9i中Oracle DATA计算时间差的方法。

    Oracle 计算非工作时间.sql

    Oracle 计算非工作时间(去除周末,自定义节假日,等待时间)

    Oracle计算时间差常用函数

    主要介绍了Oracle计算时间差常用函数,涉及用法代码及示例,具有一定参考价值。需要的朋友可以了解下。

    oracle时间差表达式

    oracle时间差表达式,计算两时间相差的天、小时、分钟、秒及毫秒数

    Oracle里面 SQL语句 怎么得到两个时间的时间差

    可以帮助您学些Oracle,有两个日期数据START_DATE,END_DATE,欲得到这两个日期的时间差(以天,小时,分钟,秒,毫秒)

    Oracle计算时间差为毫秒的实现代码

    Oracle 中我们知道用 TO_DATE 函数可以进行秒、分、时、天、月、年、周等时间差的计算,但是毫秒却不好计算,TO_DATE 函数只能精确到秒,毫秒则只能用 TO_TIMESTAMP 函数,但是这个函数不像 TO_DATE 这样直接减出来...

    Oracle_RAC安装配置指导书

    RAC,全称real application clusters,译为“实时应用集群”, 是Oracle新版数据库中采用的一项新技术,是高可用性的一种,也是Oracle数据库支持网格计算环境的核心技术。 RAC提供的优缺点: 优点  Oracle RAC主要...

    oracle日期转换

    oracle中的日期转换,包括计算时间差,某月,最后一天等常见时间

    Oracle_Database_11g完全参考手册.part2

    上架时间:2010-5-26 出版日期:2010 年6月 开本:16开 页码:1240 版次:1-1 定价 :¥158.00 内容简介 本书全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有新增功能和工具,如何执行功能强大...

    计算2个日期相差天数、去除节假日周末

    拿去可以直接用的计算2个日期间相差天数,并过滤了节假日和周末。

    Oracle_Database_11g完全参考手册.part5

    上架时间:2010-5-26 出版日期:2010 年6月 开本:16开 页码:1240 版次:1-1 定价 :¥158.00 内容简介 本书全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有新增功能和工具,如何执行功能强大...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    日期类型 date 7字节 用于存储表中的日期和时间数据,取值范围是公元前4712年1月1日至公元9999年12月31日,7个字节分别表示世纪、年、月、日、时、分和秒 二进制数据类型 row 1~2000字节 可变长二进制数据,在具体...

    oracle函数大全.doc

    给出日期date和星期x之后计算下一个星期的日期 SQL> select next_day('18-5月-2001','星期五') next_day from dual; NEXT_DAY ---------- 25-5月 -01 41.SYSDATE 用来得到系统的当前日期 SQL> select to_char...

    Oracle_Database_11g完全参考手册.part3

    通过学习本书,您可以了解如何实现最新的安全措施,如何调优数据库性能,如何部署网格计算技术。附录部分内容丰富、便于参照,包括Oracle命令、关键字、功能以及函数等. 作译者 本书提供作译者介绍  Kevin Loney是...

    Oracle_Database_11g完全参考手册.part4

    上架时间:2010-5-26 出版日期:2010 年6月 开本:16开 页码:1240 版次:1-1 定价 :¥158.00 内容简介 本书全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有新增功能和工具,如何执行功能强大...

    计算两个日期相隔天数并减去节假日

    计算两个日期相隔天数并减去节假日,这个可以使用在各种需要通知的场景以及工作日提醒等

    通过Oracle的缓冲区内部机制调整性能

    要利用完全数据缓冲的优势,就要记住从内存取回数据块和从磁盘取回数据块的时间差。对磁盘的访问时间是以毫秒或者说千分之一秒来计算的,而内存的速度是以纳秒或者说十亿分之一秒来计算的。因此内存的访问速度要快三...

    MYSQL,SQLSERVER,ORACLE常用的函数

    SQL> select instr('oracle traning','ra',1,2) instring from dual; INSTRING --------- 9 6.LENGTH 返回字符串的长度; SQL> select name,length(name),addr,length(addr),sal,length(to_char(sal)) from ....

    racle_Database_11g完全参考手册.part1

    上架时间:2010-5-26 出版日期:2010 年6月 开本:16开 页码:1240 版次:1-1 定价 :¥158.00 内容简介 本书全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有新增功能和工具,如何执行功能强大...

Global site tag (gtag.js) - Google Analytics