分享

oracle分页查询方法

 168一路发 2011-03-17
Oracle的分页机制主要不外乎两种方法,
1. 使用rownum序列,
   这种方法的好处是, 在查找前几页时速度比较快,
   缺点时, 查询出来的数据不是完全准确的, 在查询的数据量很大时, 特别是查询最后几页时速度非常慢.
select col1,col2,..,coln
from (
   select rownum rn,col1,col2,....,coln
   from table_name
   where ...
   and rownum <= n
)
where rn >= m;

2. 使用Oracle8i开始支持的分析函数

    这种方法取出来的数据准确性相当高, 查询效率比较稳定. 建议使用这种方法.
select col1,col2,..,coln
from (
   select row_number() over(order by colx desc /asc ) rn,
            col1,col2,....,coln
   from table_name
   where ...
)
where rn between m and n ;

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多