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

Oracle中查询第N到M条记录

 
阅读更多

select *

from (select rownum rn , t.* from table table t)

where rn between n and m

 

[注:] ROWNUM 必须重命名为RN或者是其他的一个虚拟名字

 

------------------------以下是更新第N到M条的记录时所需要注意的问题----------------------------

 

update table t set t.price='88'

where t.code in ( select t.code

                            from ( select rownum rn , t1.* from table t where t1) t

                            where rn between n and m )

[注:] price 是该表要更新的字段名, code是该表的唯一标识字段

oracle会自动排序.

分享到:
评论

相关推荐

    如何在Oracle中实现SELECT TOP N的方法

    如果需要从这N条记录中进一步提取第M(M <= N)条记录,可以使用嵌套查询并添加一个`RECNO`字段来跟踪行号。例如,要获取排序后的第二个顾客记录: ```sql SELECT id, name FROM ( SELECT ROWNUM RECNO, id, name ...

    如何在Oracle中实现SELECT_TOP_N的方法

    2. **在TOP N记录中抽出第M条记录(M <= N)** 如果需要在已获取的前N条记录中进一步抽取出第M条记录,可以同时获取ROWNUM,然后根据ROWNUM筛选出所需记录。假设我们想要在上述例子中获取第二个顾客的信息,可以...

    查询前几条记录

    在MySQL中,如果我们要查询前N条记录,可以这样写: ```sql SELECT * FROM 表名 LIMIT N; ``` 这里的`N`就是我们想要的记录数。如果你还需要指定从哪一条开始取,可以配合`OFFSET`关键字: ```sql SELECT * FROM ...

    SQL查询前10条记录(SqlServermysqloracle)语法分析.docx

    如果需要查询第N到M条记录,可以这样做: ```sql SELECT * FROM ( SELECT * FROM table_name ORDER BY id LIMIT 0, M ) AS subquery ORDER BY id LIMIT N, 1; -- 或者更简洁的写法 SELECT * FROM table_name ...

    在ORACLE中实现SELECT TOP N的方法

    在数据库查询操作中,经常需要获取数据表中的前N条记录,这种需求在多种业务场景中都非常常见。Oracle数据库作为一款强大的关系型数据库管理系统,提供了多种方法来实现SELECT TOP N的功能。本文将详细介绍在Oracle...

    Oracle中ROWNUM的使用技巧.docx

    例如,要获取第N到M条记录,可以先选择`WHERE ROWNUM <= M`,然后在外部查询中使用`WHERE ROWNUM > N`。另外,也可以使用`BETWEEN N AND M`来获取相同的结果。 3. **陷阱与注意事项**:ROWNUM的生成是基于查询的...

    Oracle中实现MySql中limit+SqlServer分页+分页的存储过程

    而在Oracle中,如果要取得按某个字段排序的第M到N条记录,可以使用如下的嵌套查询: ```sql SELECT ID FROM ( SELECT ID, ROWNUM AS con FROM ( SELECT ID FROM TestSort ORDER BY ID ) WHERE rownum <= N /* N...

    oracle分页程序的实现

    假设我们要查询第M页的数据,每页有N条记录,可以这样做: ```sql SELECT t1.* FROM your_table t1, (SELECT COUNT(*) total_rows, (M - 1) * N start_row, M * N end_row FROM your_table) t2 WHERE t1.rowid ...

    Oracle的正则表达式

    量词是用来控制重复次数的,例如`{n}`表示前面的元素重复n次,`{n,}`表示至少重复n次,而`{n,m}`则表示重复n到m次。在Oracle中,还可以使用`\d`来匹配数字,`\w`匹配字母或数字,`\s`匹配空白字符。 Oracle的正则...

    在ORACLE中SELECT TOP N的实现方法

    2. 抽取`TOP N`记录中的第`M`条记录(`M <= N`) 若需在已获取的`TOP N`记录中提取第`M`条记录,可以利用`ROWNUM`的特性,先获取`ROWNUM`作为记录编号,然后筛选出编号为`M`的记录。例如,要获取`TOP 3`记录中的第二...

    oracle常见面试题及答案

    答:可以使用以下 SQL 语句来搜索出第 N~M 条记录: `SELECT * FROM 表 WHERE ROWNUM 大值 MINUS SELECT * FROM 表 WHERE ROWNUM 小值;` 15. 如何用 SQL 语句实现查找一列中的第 N 大值? 答:可以使用以下 SQL ...

    mySql与oracle分页技术

    `OFFSET m`先跳过`m`条记录,然后`LIMIT n`获取`n`条记录。但需要注意的是,`OFFSET`在处理大量数据时性能较低,因为它需要扫描跳过的所有行。因此,对于大数据分页,更推荐使用基于主键的排序和范围查询来提高效率...

    oracle查询语句大全.doc

    8. **限制查询结果数量**: 获取前N条记录可以使用子查询和`ROWNUM`,例如:`SELECT a.*, ROWNUM FROM (SELECT * FROM cardkind ORDER BY cardkind) a WHERE ROWNUM < n;` 9. **查找用户下的所有表**: `SELECT * ...

    oracle一条sql语句分页

    假设我们需要获取第n页的数据,每页包含m条记录。那么,首先我们需要确定查询的起始位置(即第一页的起始位置是1,第二页的起始位置是m+1,以此类推)。接下来,我们可以按照以下步骤构建SQL查询语句: 1. **计算...

    oracle 分页语句

    - 假设我们需要查询第`page`页的数据,每页显示`pageSize`条记录,那么可以将上述查询语句调整为: ```sql SELECT * FROM ( SELECT a.*, ROWNUM rn FROM ( SELECT * FROM tablename WHERE ROWNUM * :...

    oracle mysql sqlserver分页

    1. **第一步**:创建一个子查询,使用`TOP`获取前`(M + N - 1)`条记录。 ```sql SELECT TOP (M + N - 1) * FROM Sys_option ORDER BY sys_id DESC ``` 2. **第二步**:再次查询上面的结果,并获取最后`N`条记录...

    oracle sql分页语句

    Oracle SQL分页语句是数据库查询中的一个重要概念,它允许我们从海量数据中按需获取特定范围的结果,比如第一页、第二页等。在Oracle数据库系统中,实现分页查询通常使用ROWNUM伪列或者结合RANK()、DENSE_RANK()、...

    从N行读到M行的数据sql语句

    例如,当我们希望只查看某个表中的第N行到第M行的数据时,就需要使用一些特殊的技术来实现这一目标。根据提供的标题“从N行读到M行的数据sql语句”及描述“用sql语句写从N行读到M行的数据”,我们可以详细地探讨如何...

Global site tag (gtag.js) - Google Analytics