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

oracle分页就用这一句

阅读更多

分页的宗旨是控制查询出来的数据个数,下面这条语句对于Oracle分页已经足够了。
(注:该语句只能用于Oracle)

SELECT * FROM (SELECT temp.*, ROWNUM RN FROM (SELECT * FROM USERS ORDER BY ID DESC) temp) WHERE RN > 0 AND RN <= 10

SELECT *
FROM (SELECT AA.*, ROWNUM RN
FROM (SELECT * FROM USERS ORDER BY ID DESC) AA)
WHERE RN > 0 AND RN <= 10

说明:
其中USERS为数据库表名
SELECT * FROM USERS ORDER BY ID DESC
这一句是不进行分页的查询。
而ROWNUM <= 10和RN >0用于控制每页要显示的数据条数,我这里用ROWNUM <= 10和RN >0表示每页显示10条数据,那么要进入下一页,则ROWNUM <= 20和RN >10

上面的这两个数值只需要你在程序中动态传入值,例如在struts或servlet中动态传入两个参数就可以进行分页控制。


MSSQL SYBASE下面用top 来分页

POSTGRESQL MYSQL就直接用limit更简单了

在oracle 下面有4种方法

oracle分页技术2007年08月13日 星期一 23:08两种分页技术,第二种效率高多了
1. select * from
(select rownum rn,t.* from table t )
where rn <50 and rn>=1

2. select * from
(select rownum rn,t.* from table t rownum<50)
where rn>=1

带排序要求的分页,在9i以上的环境推荐使用分析函数
select * from
(select row_number() over(order by esn) rn,esn,akey from as_esn_info )
where rn <50 and rn>=1
(以上方法验证过)
或者以下

(1)minus差分页 :select * from table where rownum<=10 minus select * from table where rownum<=5

(2)rownum伪列分页 :select * from (select rownum tid,t.* from table t where rownum<=10) where tid>5

(3)notin相反分页:select * from table where id not in(select id from table where rownum<=5) and rownum<=5

分享到:
评论

相关推荐

    oracle分页操作

    在上面的分页查询语句中,这种考虑主要体现在WHERE ROWNUM 这句上。 选择第21到40条记录存在两种方法,一种是上面例子中展示的在查询的第二层通过ROWNUM 来控制最大值,在查询的最外层控制最小值。而另一种方式是...

    oracle,mysql,SqlServer三种数据库的分页查询的实例

    LIMIT子 句可以用来限制由SELECT语句返回过来的数据数量,它有一个或两个参数,如果给出两个参数, 第一个参数指定返回的第一行在所有数据中的位置,从0开始(注意不是1),第二个参数指定最多返回行数。例如:...

    Oracle带输入输出参数存储过程(包括sql分页功能)

    ”这一句不然其他的session无法drop(TRUNCATE TABLE 表名 必须在 ‘drop table 表名’ 这一句前执行) create or replace procedure p_DevData(p_id IN varchar2(150),pageIndex in NUMBER,pageC

    CMS轻量级系统

    2、用户可以不编写一句代码,就制作出一个默认风格的CMS站点。 3、前端页面自适应,支持PC和H5端,采用前后端分离的机制实现。后端支持天梯蓝和天梯红换肤功能。 4、项目技术分层明显,用户可以根据自己的业务模块...

    asp.net知识库

    页面一postback,它就显示页面的最顶端,怎样让它定位在某一位置? 如何保证页面刷新后的滚动条位置 清除网页历史记录,屏蔽后退按钮! 如何传值在2个页面之间 :要求不刷新父页面,并且不能用Querystring传值 Asp...

    2009达内SQL学习笔记

    直接用一句语句也可以,如下 export ORACLE_HOME=/oracledata/.../bin: 一、注意事项: 大小写不敏感,即不区分大小写。提倡关键字大写,便于阅读和调式。 “!”在SQL环境下执行Unix命令。 SQL语句是由简单的...

    xmljava系统源码-memory:超轻量级Java持久化工具:比dbutils更小巧、好用的的持久化工具,支持Oracle&MYSQL

     这里提一句,Memory在设计与实现上,都借鉴了Dbutils,其相对于hibernate,mybatis这些庞然大物,已经是一个极其小巧的工具。 但是Memory的类和接口更少(不超过10个),体积更小(只有二十几K),数目和体积都约为...

    SocanCode代码生成器

    SocanCode是一个能帮助软件开发人员自动生成代码的工具。内置了C#三层结构模板,存储过程模板,使用它可以省去众多繁琐的重复工作,让开发人员把精力集中在业务逻辑上,大量减少重复劳动。让开发更便捷! 1、纯绿色...

    最新Java面试宝典pdf版

    24. 写一个用jdbc连接并访问oracle数据的程序代码 111 25、Class.forName的作用?为什么要用? 111 26、大数据量下的分页解决方法。 111 27、用 JDBC 查询学生成绩单, 把主要代码写出来(考试概率极大). 112 28、这段...

    Java面试宝典2010版

    24. 写一个用jdbc连接并访问oracle数据的程序代码 25、Class.forName的作用?为什么要用? 26、大数据量下的分页解决方法。 27、用 JDBC 查询学生成绩单, 把主要代码写出来(考试概率极大). 28、这段代码有什么...

    Java面试笔试资料大全

    24. 写一个用jdbc连接并访问oracle数据的程序代码 111 25、Class.forName的作用?为什么要用? 111 26、大数据量下的分页解决方法。 111 27、用 JDBC 查询学生成绩单, 把主要代码写出来(考试概率极大). 112 28、这段...

    JAVA面试宝典2010

    24. 写一个用jdbc连接并访问oracle数据的程序代码 111 25、Class.forName的作用?为什么要用? 111 26、大数据量下的分页解决方法。 111 27、用 JDBC 查询学生成绩单, 把主要代码写出来(考试概率极大). 112 28、这段...

    Java面试宝典-经典

    24. 写一个用jdbc连接并访问oracle数据的程序代码 111 25、Class.forName的作用?为什么要用? 111 26、大数据量下的分页解决方法。 111 27、用 JDBC 查询学生成绩单, 把主要代码写出来(考试概率极大). 112 28、这段...

    java面试题大全(2012版)

    24. 写一个用jdbc连接并访问oracle数据的程序代码 111 25、Class.forName的作用?为什么要用? 111 26、大数据量下的分页解决方法。 111 27、用 JDBC 查询学生成绩单, 把主要代码写出来(考试概率极大). 112 28、这段...

    Java面试宝典2012版

    24. 写一个用jdbc连接并访问oracle数据的程序代码 111 25、Class.forName的作用?为什么要用? 111 26、大数据量下的分页解决方法。 111 27、用 JDBC 查询学生成绩单, 把主要代码写出来(考试概率极大). 112 28、...

    java面试宝典2012

    24. 写一个用jdbc连接并访问oracle数据的程序代码 121 25、Class.forName的作用?为什么要用? 121 26、大数据量下的分页解决方法。 121 27、用 JDBC 查询学生成绩单, 把主要代码写出来(考试概率极大). 122 28、这段...

    Java面试宝典2012新版

    24. 写一个用jdbc连接并访问oracle数据的程序代码 111 25、Class.forName的作用?为什么要用? 111 26、大数据量下的分页解决方法。 111 27、用 JDBC 查询学生成绩单, 把主要代码写出来(考试概率极大). 112 28、这段...

    精髓Oralcle讲课笔记

    -- 首先,以超级管理员的身份登录oracle sqlplus sys/bjsxt as sysdba --然后,解除对scott用户的锁 alter user scott account unlock; --那么这个用户名就能使用了。 --(默认全局数据库名orcl) 1、...

Global site tag (gtag.js) - Google Analytics