`

Oracle选取有限条数据记录

 
阅读更多

Oracle rownum 用法

rownum是加在结果集上的一个伪列,即先查到结果集之后再加上去的一个列 (强调:先有结果集后有rownum)。它总是从1开始排起的。
例如,选取前5行:select rownum,ename from emp where rownum <= 5;
rownum 不能接 > 号和 >= 号,只能使用<=,选取行范围时使用子查询:
select r,rownum,ename from (select rownum r, ename from emp) where r>=5 and r <=10;
这里比较了r,rownum的不同,就可以看到使用子查询选择行范围时,要把rownum转换成实列。

求最近雇用的10名员工:
SELECT rownum,empno,ename,hiredate
FROM (SELECT *
FROM emp
ORDER BY hiredate DESC)
WHERE ROWNUM <= 10;
本语句的执行顺序是:先排序再取10条行。

SELECT rownum,empno,ename,hiredate
FROM emp
WHERE ROWNUM <= 10
ORDER BY hiredate DESC;
本语句的执行顺序是:先取10条行再排序。

注意:本语句的执行顺序和order by列有关,如果order by列是主键,就先排序,再取10条(速度比第一种语句快);否则就是先取10条再排序,此时结果就与要求不一样了,所以第二种写法一定要在排序列是主键的情况下才能保证结果正确。

使用rownum求当月的所有天数:
SELECT TRUNC (SYSDATE, 'MM') + ROWNUM - 1
FROM DUAL
CONNECT BY ROWNUM <= TO_NUMBER (TO_CHAR (LAST_DAY (SYSDATE), 'dd'))

分享到:
评论

相关推荐

    oracle 查询重复数据

    - **外层查询**: `select * from people where peopleid in (...)` 这部分从`people`表中选取所有字段,其中`WHERE`子句指定只有当`peopleid`出现在子查询的结果中时才选择该行,即选择了所有重复的记录。...

    oracle中取中间记录的方法

    在Oracle数据库中,有时候我们需要从数据表中选取特定范围内的记录,例如,如果我们想要获取第5到第10条记录(即中间的记录),这在实际应用中是非常常见的需求。本文将详细介绍如何利用Oracle中的`MINUS`操作符以及...

    利用ORACLE实现数据的抽样

    在Oracle中,可以先通过`GROUP BY`对数据进行分组,再从每个分组中随机选取记录,以此来模拟整群抽样的效果。 #### 4. 分层抽样 分层抽样是将总体按照某些特征划分成不同的层,然后从每一层中随机抽取样本。在...

    ORACLE去除重复数据方法

    - `SELECT * FROM cte WHERE rn = 1`:这一行代码用于选择每个分组中的第一条记录,即行号为1的记录。 #### 总结 本文介绍了两种在Oracle数据库中去除重复数据的方法:一是通过子查询实现,二是利用窗口函数`ROW_...

    oracle查询一个月之内数据

    这涉及到对日期范围的精确定义和计算,确保只选取该月的数据。 ### 二、关键Oracle SQL语句分析 #### 1. 子查询构建日期范围 ```sql (selectto_char(add_months(last_day(sysdate),-1)+1,'yyyymmdd')asfirst_day,...

    Oracle结合Mybatis实现取表TOP 10条数据

    Oracle数据库在处理“取表TOP 10条数据”这类需求时,与SQL Server或MySQL等其他数据库系统有所不同。在Oracle中,没有直接的`TOP`关键字,而是使用`ROWNUM`来限制返回的行数。本文将详细介绍如何在Oracle数据库中...

    Oracle分页(limit方式的运用)

    这里的`page_number`代表当前页码,例如当`page_number=2`时,查询第2页的数据,即从第11条到第20条记录。 #### 三、Oracle分页的实现步骤 1. **确定分页参数**:首先需要确定每页显示的记录数`rows_per_page`以及...

    纯真IP库 oracle数据

    选取其中几条记录进行详细解析: - **1.0.0.0 1.0.0.255 ĴCZ88.NET** 表示IP地址范围从1.0.0.0至1.0.0.255属于中国河南省CZ88.NET公司。 - **1.0.1.0 1.0.3.255 ʡ** 这里的归属信息为`ʡ`,可能是省份编码,但...

    OracleToMysql数据同步.rar

    综上所述,Oracle到MySQL的数据同步是一个涉及多方面考虑的技术任务,包括数据的选取、同步策略、工具选择以及迁移后的验证。在实际操作中,需要根据具体业务需求和环境选择合适的同步方法,并确保数据的安全和完整...

    将Oracle的数据倒入EXCEL中的方法

    对于配置良好的硬件,即使是数千条记录,也能在几秒钟内完成导入。因此,对于需要频繁在Oracle和Excel之间交换数据的用户,ODBC是一种非常有效的工具。 总之,通过ODBC连接Oracle数据库和Excel,用户能够便捷地将...

    解决Oracle分页查询中排序与效率问题

    该查询首先从`tZDYSX`表中选取数据,并通过连接`tuser`和`lborganization`表来获取更多的信息。接着按照`t.ID`字段进行排序。但此查询并没有实现分页功能。 为了实现分页,我们可以采用以下两种方法: 1. **简单...

    Oracle数据库操作

    本文将深入探讨在Oracle数据库操作中涉及的一些关键知识点,包括记录集的显示、时间的SQL转换、汉字的随机选取以及事务处理等。 1. **子程序_显示记录集信息**: 在Oracle数据库操作中,我们经常需要从查询结果中...

    oracle_cj.doc

    SQL语句的执行顺序大致为:FROM子句(组装数据源),WHERE子句(筛选记录),GROUP BY子句(分组数据),使用聚合函数(如MAX、MIN、COUNT等),HAVING子句(筛选分组),然后是计算表达式,最后是ORDER BY子句...

    ORACLE数据仓库建设.docx

    - **随时间变化**:记录了随时间变化的历史数据。 **1.3 数据仓库与数据库** - **区别**:数据仓库主要针对历史数据的分析和报告,而数据库更侧重于事务处理。 - **联系**:两者都依赖于强大的数据库管理系统...

    Oracle应用项目——简单数据查询原理.pdf

    数据查询的基本语法是从数据库中选取满足特定条件的记录,生成一个数据记录集合,然后将这些记录存储到数据记录集对象中。 2. **简单查询**: - **选择所有列**:`SELECT * FROM SCOTT.Goods` 会选取Goods表中的...

    mySql与oracle分页技术

    由于在MySQL中索引是从0开始的,所以如果我们要获取第二页的数据(每页显示10条记录),`LIMIT`的参数应该是`LIMIT 10, 10`。这将跳过前10条记录(即第一页)并返回接下来的10条记录。这种分页方式简洁高效,特别...

    oracle_qtp

    这段代码首先选取前20条记录,然后在外部查询中过滤出第11到20条,从而实现第二页的数据获取。注意,这种做法只适用于Oracle,因为ROWNUM的处理方式是Oracle特有的。 在实际测试过程中,可能需要根据业务需求修改...

Global site tag (gtag.js) - Google Analytics