oracle SQL分页查询处理

2014-11-24 08:23:53 · 作者: · 浏览: 1
oracle SQL分页查询处理
分页取11到20的记录,两种查询方法,如下,
通过rownum,然后对记录进行截取处理。
第一种的速度会比较快点,因为在tab1这层先过滤掉了一部分数据,第二种方法到最外层再进行处理
--分页查询1
SELECT TAB2.*
  FROM (SELECT tab1.*, ROWNUM row_num
          FROM (
                  --把需要分页的sql直接放进来就行了
                  SELECT t.* FROM T_T_DEPT t
               
                ) TAB1
          WHERE ROWNUM<21
        ) TAB2
WHERE TAB2.row_num >
10 --分页查询2 SELECT TAB2.* FROM (SELECT tab1.*, ROWNUM row_num FROM ( --把需要分页的sql直接放进来就行了 SELECT t.* FROM T_T_DEPT t ) TAB1 ) TAB2 WHERE TAB2.row_num BETWEEN 11 AND 20