`
Ben.Sin
  • 浏览: 234124 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Oracle时间操作的一个小技巧

阅读更多

Oracle日期函数有不少,to_date, to_char, trunc,add_month, months_between, next_day等等

 

这些都可以在网上找到一大堆资料,这里就不重复

 

本文提及的时间操作的小技巧是关于oracle时间的加减

 

众所周知,oracle的时间可以直接用来加减操作,比如

 

select sysdate, sysdate - 2 from dual

 

"SYSDATE"    "SYSDATE-2"

-----------------------------------
"19-5月 -09"    "17-5月 -09"

 

很明显,sysdate - 2表示的日期-2,也就是2天前的时间,2天后的时间+2就可以了

 

但是,有的时候我们不需要2天前或者2天后这么长的时间,我们需要2小时前,或者2分钟前的时间

 

但是并没有发现Oracle有关于小时或者分钟直接操作的函数,本人也非常纳闷

 

后来查找资料和朋友们的帮助,才知道日期用于加减操作的时候是一个浮点数,于是做了2个实验

 

实验1:

select to_char(sysdate, 'yyyy-MM-dd hh24:mi:ss') cur_time,
       to_char(sysdate - 2 / 24, 'yyyy-MM-dd hh24:mi:ss') time_before_2_hour
  from dual;

 

 

"CUR_TIME"                       "TIME_BEFORE_2_HOUR"

-------------------------------------------------------------------
"2009-05-19 09:21:58"    "2009-05-19 07:21:58"

 

 

实验2:

select to_char(sysdate, 'yyyy-MM-dd hh24:mi:ss') cur_time,
       to_char(sysdate - 2 / (24 * 60), 'yyyy-MM-dd hh24:mi:ss') time_before_2_minutes
  from dual;

 

 

"CUR_TIME"                      "TIME_BEFORE_2_MINUTES"

---------------------------------------------------------------------
"2009-05-19 09:24:18"    "2009-05-19 09:22:18"

 

结果显示比较明显了,2小时前就是2/24天,2分钟就是2/(24*60)天,oracle日期的加减还是day上的加减,不过他是一个浮点数,所以转换成日期之后实际上就是时间上的加减。

分享到:
评论

相关推荐

    ORACLE进阶操作技巧

    ### ORACLE进阶操作技巧知识点详解 #### 一、数据库安装与配置 ##### 安装注意事项 - **根据用户数量进行特定安装**:在安装Oracle数据库之前,首先需要考虑的是预期用户数量。不同规模的应用场景可能需要不同版本...

    ORACLE数据库维护技巧

    为了更好地诊断并解决这些问题,本文将分享一系列关于Oracle数据库维护的小技巧,特别是针对Unix环境下的维护实践。 #### 二、操作系统层面的监控与调优 ##### 1. 检查操作系统IO问题 - **工具选择**:`sar`是一个...

    Oracle优化日记:一个金牌DBA的故事 白鳝.扫描版

    如何计算数据块中某个字段的位置优化小技巧 如何计算索引块中某个字段的位置优化小技巧 自己动手写一个dul优化小技巧 bootstrap$的访问优化小技巧 unloadBlock函数优化小技巧 unloadRow函数5月29日 突破困局优化小...

    ORACLE_SQL性能优化技巧

    - **全表扫描**:当ORACLE遍历表中所有记录时,会一次性读取多个数据块以提高效率。但全表扫描对大型表来说可能效率低下,应尽量避免。 - **通过ROWID访问**:ROWID包含记录的物理位置信息,通过索引可以快速定位...

    OracleSQL性能优化技巧

    综上所述,Oracle SQL性能优化是一个系统性的工程,需要从多个角度出发,结合具体的应用场景,对数据结构、程序设计、SQL语句、硬件资源和操作系统参数进行全面的分析和调整。这不仅可以提高数据库的运行效率,还能...

    oracle性能优化技巧

    - 在子查询中,使用`EXISTS`通常比`IN`更高效,因为`EXISTS`可以在找到第一个匹配项后立即停止搜索。 12. **NOT EXISTS与NOT IN的比较**: - `NOT IN`可能导致全表扫描,而`NOT EXISTS`则不会,因此在大多数情况...

    《Oracle查询优化改写技巧与案例》PDF版本下载.txt

    根据提供的文件信息,本文将对《Oracle查询优化改写技巧与案例》这一主题进行详细的解析,涵盖Oracle查询优化的基本概念、重要性、改写技巧及其实际应用案例。 ### 一、Oracle查询优化概述 #### 1.1 查询优化定义 ...

    oracle操作文档

    然而,随着数据量的增长和业务复杂性的增加,如何有效地优化 Oracle 查询成为了一个重要的课题。本文将详细探讨 Oracle 查询优化的一些基本准则,帮助读者理解如何编写高效、快速的 SQL 语句。 #### 二、多表关联...

    Oracle EBS Form开发小技巧汇总

    ### Oracle EBS Form 开发小技巧汇总 #### 1. Form中提交并发请求 在Oracle EBS Form开发中,提交并发请求是一项常见的需求。当用户希望执行后台处理时,可以通过这种方式来实现。以下是一个示例代码片段,展示了...

    oracle日期时间数据类型与时间间隔数据类型讲解

    #### 23.2 小技巧:无需使用TO_DATE函数处理特定格式的日期 当处理不含时分秒的日期时,可以直接使用`DATE`关键字。例如,插入特定日期: ```sql INSERT INTO test_ly(a) VALUES (DATE '2008-08-10'); ``` 如果要...

    oracle11g R2 DBA操作指南@oracle.org.rar

    Oracle 11g R2是Oracle公司推出的数据库管理系统的一个重要版本,它在11g的基础上进行了诸多改进和增强,包括性能提升、数据安全增强、高可用性解决方案以及更高效的存储管理等。R2版本引入了实时应用集群(Real ...

    oracle数据库常用操作指令

    例如,可以使用CREATE SEQUENCE创建一个序列号,然后在插入记录时引用该序列号。在插入日期字段值时,可以使用系统时间SYSDATE或者TO_DATE函数进行格式化。针对可能存在的单引号问题,需要将单引号替换成两个单引号...

    Oracle查询优化改写 技巧与案例

    - **案例2**:通过创建分区表,一个每天处理大量插入和查询的订单系统性能显著提升,查询响应时间缩短了80%。 总结,Oracle查询优化改写是数据库管理中的核心技能,通过深入理解SQL语句、索引、表设计和参数设置,...

    Oracle 常用SQL技巧经典收藏

    Oracle数据库是世界上最流行的数据库管理系统之一,SQL(结构化查询语言)是访问和操作数据库的核心工具。以下是一些关于Oracle常用SQL技巧的经典要点: 1. **避免在SELECT子句中使用“*”**:在SQL查询中,使用...

    Oracle经典常用技巧荟萃

    2. Oracle数据库的空间管理技巧:空间管理是数据库维护中的另一个重要方面,合理的空间管理策略能够防止空间浪费,提高数据存储效率。 3. 创建和使用分区的表:分区技术可以将大的数据库表划分为多个更小的部分,有...

    ORACLE存储过程性能优化技巧

    ### ORACLE存储过程性能优化技巧 #### 一、概述 在数据库管理中,ORACLE存储过程的性能优化是一项至关重要的工作。高效的存储过程不仅能提升应用系统的响应速度,还能减少服务器资源的消耗,提高整体系统性能。...

    ORACLE DBCONSOLE的配置与使用技巧笔记

    Oracle DBCONSOLE 是 Oracle 数据库的一个组件,用于提供基于 Web 的管理界面,方便管理员对数据库进行监控和管理。这篇笔记主要介绍了如何配置和使用 DBCONSOLE。 首先,检查 DBCONSOLE 是否已配置。这通常通过...

    Oracle经典教程 Oracle基本知识

    这个过程可能需要较长时间。 6. **工具安装**:安装过程中还会自动安装相关的工具,如网络配置向导、iSQL*plus等。 7. **数据库配置**:使用DBCA(Database Configuration Assistant)工具来配置数据库。 ##### 2.3...

Global site tag (gtag.js) - Google Analytics