欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Oracle分页

程序员文章站 2022-07-13 14:43:05
...

Oracle数据库的分页不同于Mysql数据库简单的Limit就能实现分页。

一般高效和常见的写法,是使用Oracle的RowNum,实现数据的分页。

具体举例如下:

1.我们使用Scott用户登录数据库,来查询Emp表实现分页

我们先查询出emp表的所有数据:

select * from emp e order by e.empno;

 数据结果如下:


Oracle分页
 

2. 查询出RowNum以便后续实现根据rowNum进行数据的分页

select rownum rn, e.* from emp e order by e.empno;

  数据结果如下:


Oracle分页
 

3. 根据rowNum进行分页

比如,我们需要每页显示五条数据。我们先显示第1-5条

select a.*
  from (select rownum rn, e.* from emp e order by e.empno) a
 where a.rn > 0

   数据结果如下:


Oracle分页
 

4. 显示第1-5条数据

select b.*
  from (select a.*
          from (select rownum rn, e.* from emp e order by e.empno) a
         where a.rn > 0) b
 where b.rn < 6

    数据结果如下:


Oracle分页
 

目前为止,我们已经完成了数据的分页查询和显示。

我们只需要在程序中动态的改变 where 条件中的rowNum的值即可实现Oracle数据的分页