Oracle分页

常用关系数据库分页SQL都是不相同的,不过大同小异

下面是Oracle分页简单事例图片以及代码:


1、普通查询:

select * from table_Name t order by active_count desc;

Oracle分页_第1张图片

2、查询第一条记录:
select *
  from (select * from table_Name order by active_count desc)
 where rownum = 1;




3、查询前3条:类似Sqlserver中的TOP 3
select *
  from (select * from table_Name order by active_count desc)
 where rownum <= 3;

Oracle分页_第2张图片


4、查询第2至第3条记录:
select *
  from (select t.*, rownum as no
          from (select * from table_Name order by active_count desc) t)
 where no between 2 and 3



5、在TOP3条记录的基础上查询第2至第3条记录:

select *
  from (select t.*, rownum as no
          from (select * from table_Name order by active_count desc) t  where rownum <= 3 )
 where no between 2 and 3




6、查询第2条以后的记录:

select *
  from (select t.*, rownum as no
          from (select * from table_Name order by active_count desc) t)
 where no >=2

Oracle分页_第3张图片


解释:

rownum 是在已产生数据的基础上伪生成的编号,所以 使用rownum 必须在已有数据的基础上,因此Oracle分页才加入了多个子查询。

你可能感兴趣的:(oracle,oracle,oracle,oracle分页,rownum分页,rownum使用原理)