`
xurichusheng
  • 浏览: 346190 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

【Oracle】按时间范围查询

阅读更多

 

-- 七天前的那一天
SELECT T.*
  FROM T_BREAKER T
 WHERE T.GATHERTIME BETWEEN
       TO_DATE(TO_CHAR(SYSDATE - 7, 'yyyy-mm-dd') || ' 00:00:00',
               'yyyy-mm-dd hh24:mi:ss') AND
       TO_DATE(TO_CHAR(SYSDATE - 7, 'yyyy-mm-dd') || ' 23:59:59',
               'yyyy-mm-dd hh24:mi:ss');

-- 上个星期一到上个星期天
SELECT T.*
  FROM T_BREAKER T
 WHERE TO_CHAR(T.GATHERTIME, 'YYYY-MM-DD') BETWEEN
       TO_CHAR((TRUNC(SYSDATE, 'DY') + 1 - 7), 'YYYY-MM-DD') AND
       TO_CHAR((TRUNC(SYSDATE, 'DY')), 'YYYY-MM-DD');

/* 前一个月内, 上个月1号到上个月最后一天 */
SELECT TO_CHAR(SYSDATE, 'MM') - 1 AS ONE_MONTH_AGO FROM DUAL;

SELECT T.*
  FROM T_BREAKER T
 WHERE TO_CHAR(T.GATHERTIME, 'MM') = TO_CHAR(SYSDATE, 'MM') - 1;

/* 前3个月内 */
SELECT TO_CHAR(SYSDATE, 'MM') - 3 AS ONE_MONTH_AGO FROM DUAL;

SELECT T.*
  FROM T_BREAKER T 
  WHERE TO_CHAR(T.GATHERTIME, 'MM') BETWEEN TO_CHAR(SYSDATE, 'MM') - 3
  AND TO_CHAR(SYSDATE, 'MM') - 1;
  

/* 前半年内 */
SELECT T.*
  FROM T_BREAKER T 
  WHERE TO_CHAR(T.GATHERTIME, 'MM') BETWEEN TO_CHAR(SYSDATE, 'MM') - 6
  AND TO_CHAR(SYSDATE, 'MM') - 1
  ORDER BY T.GATHERTIME ASC;

/* 上一年内,去年1月1日到去年12月31日 */
SELECT T.*
  FROM T_BREAKER T
 WHERE TO_CHAR(T.GATHERTIME, 'yyyy') = EXTRACT(YEAR FROM SYSDATE) - 1;

 

分享到:
评论

相关推荐

    oracle按指定时间查询数据如果未查询到继续递减时间段查询(存储过程)

    ”,这表明没有在指定的时间范围内找到任何数据,可能需要进一步的人工干预或调整查询策略。 #### 4. 应用场景与优化方向 - **应用场景**:这种递减时间窗口的查询机制特别适用于实时数据分析或历史数据回溯场景,...

    sql查询oracle时间段操作

    Oracle数据库提供了多种方式来处理时间范围的数据,包括SQL查询、闪回功能和快照。下面我们将详细探讨这些知识点。 首先,SQL查询是获取特定时间段内数据的基础。在Oracle中,可以使用`BETWEEN`关键字来筛选特定...

    Oracle数据库按时间进行分组统计数据的方法

    在本示例中,我们关注的是如何利用SQL查询按时间进行分组统计数据。以下将详细介绍几种常见的分组方法及其应用。 1. **按年份分组**: 使用`to_char()`函数将日期字段转换为年份格式,并结合`GROUP BY`子句进行分组...

    Oracle–查询时间段内执行的sql、Produce

    1.查询时间段内执行的sql、Produce select * from v$sqlarea a where 1=1 and a.LAST_ACTIVE_TIME >= to_date( '2013-02-21 18:23:00','yyyy-MM-dd HH24:mi:ss') and a.LAST_ACTIVE_TIME < to_date( '2013-...

    oracle日期查询相关

    ### Oracle日期查询相关知识点 #### 一、获取系统当前日期与时间 在Oracle数据库中,可以通过`SYSDATE`函数来获取系统的当前日期和时间。这是一个非常实用的功能,尤其是在需要记录数据的操作时间点时。 **示例:...

    Oracle里时间的应用

    使用时间查询可以查询某个时间范围内的数据。 例如:select * from table1 where date1 between to_date('2001-01-01', 'yyyy-mm-dd') and to_date('2001-01-31', 'yyyy-mm-dd'); 这个查询语句将查询 table1 表中...

    ORACLE中SQL查询优化技术

    2. **使用分区**:将`ORDERS`表按`ORDER_DATE`字段进行范围分区,以便快速定位到特定时间段的数据。 3. **调整初始化参数**:增加`db_buffer_cache`大小,以便更多的数据能够被缓存在内存中,减少磁盘I/O操作。 ###...

    oracle并行查询优化

    1. **加速查询执行**:通过将查询任务分散到多个CPU核心上执行,可以显著减少查询的响应时间。 2. **提高吞吐量**:并行查询能够处理更大的数据量,尤其是在高并发环境下,可以显著提高系统的整体吞吐量。 3. **资源...

    Oracle公交车查询系统

    1. 按时间查询:用户可以输入特定的日期和时间,系统将根据时刻表数据,返回在此时间范围内运行的公交线路和对应站点。 2. 按站点查询:用户输入站点名称,系统会列出经过该站点的所有公交线路及其到达和离开的时间...

    oracle 性能优化 加快查询效率

    - **避免使用"*"**:在SELECT子句中使用"*"会导致Oracle解析所有列名,从而增加查询时间。 - **减少数据库访问**:通过合理设计SQL语句,可以减少不必要的数据库访问次数,从而提高整体性能。 综上所述,通过对SQL...

    oracle中查询两年之间某一个月的数据

    在Oracle数据库中,查询特定时间范围内的数据是一项常见的任务,特别是在需要分析某个特定月份或时间段的数据时。根据提供的标题、描述、标签以及部分内容,本文将详细介绍如何在Oracle中查询两年之间某一个月的数据...

    Oracle性能查询包使用

    "Oracle性能查询包使用"是一个专门针对如何提高Oracle数据库查询效率的主题。下面将详细讨论这个主题中的关键知识点。 一、SQL优化基础 1. **索引**:索引是提高查询速度的关键工具。正确地为表的列创建索引可以...

    ORACLE库存快照创建和查询工具

    4. 查询工具:提供一个用户友好的查询界面,允许用户按日期范围查询库存快照,进行数据分析。 在药品和耗材库存快照(含有查询工具)这个压缩包中,很可能包含了一个用于查询库存快照的工具。这个工具可能具有以下...

    oracle查询优化

    - **示例2:** 当查询涉及日期范围时,应该明确指定时间范围,如使用`to_date()`函数来精确指定日期范围,而不是使用模糊的时间条件。 - **示例3:** 对于数值类型的数据,避免直接进行字符串比较,例如使用`WHERE ...

    oracle不走索引可能原因.docx

    Oracle数据库在执行SQL查询时,有时会选择不使用已经创建的索引,这可能是由于多种因素导致的。以下是一些常见的原因及其详细解释: 1. **INDEX SKIP SCAN**: 当创建了一个组合索引,但是查询只使用了索引的非第一...

    oracle数据库表按年分区脚本实战例子

    在本例中,我们关注的是范围分区,特别是在时间维度上的应用,即按年进行分区。 范围分区通常基于连续的数值或日期范围,例如年份。这种方式适用于记录有明确时间戳的数据,如订单、交易记录等。以下是一个创建按年...

    ORACLE 日期和时间处理汇总

    Oracle 日期和时间处理函数提供了多种方式来处理日期和时间,包括日期和字符转换、日期语言设置、日期间的天数、时间为空的用法、日期范围查询、日期格式冲突问题、计算日期间的天数和计算月份之间的天数等。

    Oracle提高查询效率的方法

    "Oracle 提高查询效率的方法" Oracle数据管理系统作为一个强大的关系型数据库管理系统,具有高效、可靠、可扩展的特点。但是,随着数据量的增加和复杂查询的增加,查询效率可能会下降。因此,提高查询效率是 ...

    oracle抓取指定时间段AWR报告实例说明 .docx

    SnapID是指Oracle在指定时间间隔内创建的快照ID,可以通过查询`DBA_HIST_SNAPSHOT`视图获得。 **第八步:指定报告文件名及存储路径** 最后,输入将要生成的AWR报告的文件名及其存储路径。建议使用包含日期的文件名...

Global site tag (gtag.js) - Google Analytics