ORACLE分页SQL语句
2011-02-10 20:41
405 查看
1.根据ROWID来分
select * from t_xiaoxi where rowid in(select rid from (select rownum rn,rid from(select rowid rid,cid from
t_xiaoxi order by cid desc) where rownum<10000) where rn>9980) order by cid desc;
执行时间0.03秒
2.按分析函数来分
select * from (select t.*,row_number() over(order by cid desc) rk from t_xiaoxi t) where rk<10000 and rk>9980;
执行时间1.01秒
3.按ROWNUM来分
select * from(select t.*,rownum rn from(select * from t_xiaoxi order by cid desc) t where rownum<10000) where
rn>9980;执行时间0.1秒
其中t_xiaoxi为表名称,cid为表的关键字段,取按CID降序排序后的第9981-9999条记录,t_xiaoxi表有70000多条记录
个人感觉1的效率最好,3次之,2最差
相关文章推荐
- Oracle、SQL server、MySQL数据库中分页查询的SQL语句
- ORACLE分页SQL语句
- oracle分页sql语句(参考+原创)
- 一个非常好的ORACLE的分页SQL语句
- 数据库分页sql语句(mysql,oracle,sqlserver,DB2)
- Oracle分页查询Sql语句例子
- 简单oracle分页sql语句
- mybatis的分页插件pagehelper-fix使用、数据库分页查询模板sql、总结mysql与oracle语句的区别
- jsp + oracle 排序分页 高效sql语句
- sql oracle分页sql语句
- ORACLE分页SQL语句
- Oracle分页SQL语句
- ORACLE 分页SQL语句
- Oracle中实现分页的sql语句
- Oracle数据库端分页SQL语句
- ORACLE分页SQL语句
- Oracle查询分页SQL语句
- ORACLE分页SQL语句
- oracle sql语句分页
- ORACLE 分页SQL语句