广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    oracle如何实现分页

    来源:网络收集  点击:  时间:2024-02-24
    【导读】:
    使用oracle数据库查询数据时,每页展示数据有限,大部分情况下需要分页展示。如每页显示10条,一页一页查询出来。下面就来介绍下oracle分页实现工具/原料moreoraclesqldeveloper方法/步骤1/7分步阅读

    使用T_BASE_PROVINCE表作为测试演示使用,表字段如下

    IDNUMBER(11,0)

    PROVINCEIDVARCHAR2(6 BYTE)

    PROVINCEVARCHAR2(40 BYTE)

    数据可以根据自己的需要,插入一定量的测试数据

    2/7

    查询下总共数据量

    select count(*) from T_BASE_PROVINCE;

    在分页的时候,一般会显示总页数,需要先查询总数据量得到总页数,总页数=总量/每页显示记录数

    3/7

    前面的测试数据初始化完成之后,查询前20条大概有什么样的数据

    4/7

    分页语句一:含order by排序,多一层嵌套,因为order by在select之后执行,不在里面写的话可能会出现不是预期的排序结果

    select *

    from (select t.*, rownum rn

    from (select *

    from T_BASE_PROVINCE

    order by id asc) t

    where rownum = 20)

    where rn 10;

    5/7

    分页语句二:如果不需要排序,可以使用如下语句

    select a1.*

    from (select t.*,rownum rn

    from T_BASE_PROVINCE t

    where rownum =20) a1

    where rn 10;

    6/7

    分页语句三:between and方式,性能没有上面的高,但写法简单

    select a1.*

    from (select t.*,rownum rn from T_BASE_PROVINCE t) a1

    where rn between 11 and 20;

    7/7

    通用分页格式,page是页码,size是每页显示条数

    select *

    from (select t.*, rownum rn

    from (select *

    from T_BASE_PROVINCE

    order by id asc) t

    where rownum = page*size)

    where rn (page-1)*size;

    注意事项

    以上只是针对简单的单句分页查询,联表查询可以按照上面的方式适当改造就可以了

    ORACLE分页
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_134118.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-06 03:23:15  耗时:0.028
    0.0285s