当前位置: 首页 > news >正文

合肥企业网站seo网站建设与管理是干嘛的

合肥企业网站seo,网站建设与管理是干嘛的,门户和网站的区别,360网站制作潍坊Oracle如何实现分页查询 Oracle采用ROWNUM实现分页格式1格式2 Oracle采用ROWID实现分页格式1 参考链接 Oracle采用ROWNUM实现分页 格式1 sql脚本 -- 格式1(推荐)SELECT * FROM ( SELECT temp.*, ROWNUM rn FROM (SELECT * FROM 表名 WHERE 条件 ORDER BY ROWID) temp WH…

Oracle如何实现分页查询

  • Oracle采用ROWNUM实现分页
    • 格式1
    • 格式2
  • Oracle采用ROWID实现分页
    • 格式1
  • 参考链接

Oracle采用ROWNUM实现分页

格式1

  • sql脚本

    -- 格式1(推荐)SELECT * FROM   (  SELECT temp.*, ROWNUM rn   FROM (SELECT * FROM 表名 WHERE 条件 ORDER BY ROWID) temp  WHERE ROWNUM <= end (page*pagesize)  )  WHERE rn > start (page-1)*pagesize
  • 案例

    -- 查询员工信息的6-10条数据 第二页数据select rownum,t.* from (select rownum r,e.* from emp e where rownum <=10) t where r>5;-- 分页查询员工信息按照工资排序select * from (select rownum r,t.* from (select * from emp  order by sal) t where rownum<=10 ) where r>5
  • 分析

    从效率上看,上面的SQL语句在大多数情况拥有较高的效率,主要体现在WHERE ROWNUM <= end这句上,这样就控制了查询过程中的最大记录数,而在查询的最外层控制最小值

    但最大值意味着如果查到了很大的范围(如百万级别的数据),查询就会从很大范围内往里减少,效率就会很低,因此,当面对大数据量时或者优化查询效率时,可以考虑使用ROWNUM结合ROWID,见末尾

格式2

  • sql脚本

    -- 格式2SELECT *FROM (SELECT tt.*, ROWNUM AS rownoFROM (  SELECT *FROM k_task tWHERE flight_date BETWEEN TO_DATE ('20060501', 'yyyymmdd')AND TO_DATE ('20060531', 'yyyymmdd')ORDER BY fact_up_time, flight_no ) tt) table_aliasWHERE table_alias.rowno BETWEEN 10 AND 20;
  • 分析

    第一个查询的效率比第二个高得多。

    这是由于CBO优化模式下,Oracle可以将外层的查询条件推到内层查询中,以提高内层查询的执行效率

    对于格式1,第二层的查询条件WHERE ROWNUM <= 40就可以被Oracle推入到内层查询中,这样Oracle查询的结果一旦超过了ROWNUM限制条件,就终止查询将结果返回了。

    对于格式2,由于查询条件BETWEEN 21 AND 40是存在于查询的第三层,而Oracle无法将第三层的查询条件推到最内层(即使推到最内层也没有意义,因为最内层查询不知道RN代表什么)。因此,对于格式2,Oracle最内层返回给中间层的是所有满足条件的数据,而中间层返回给最外层的也是所有数据。数据的过滤在最外层完成,显然这个效率要比第一个查询低得多。

    上面分析的查询不仅仅是针对单表的简单查询,对于最内层查询是复杂的多表联合查询或最内层查询包含排序的情况一样有效

Oracle采用ROWID实现分页

格式1

  • sql脚本

    -- 格式1SELECT *FROM (SELECT RIDFROM (SELECT R.RID, ROWNUM RNFROM (SELECT ROWID RIDFROM TABLE1WHERE TABLE1_ID = XXORDER BY order_date DESC) RWHERE ROWNUM <= 20)WHERE RN >= 10) T1,TABLE1 T2WHERE T1.RID = T2.ROWID;
  • 分析

    首先通过ROWNUM查询到分页之后的10条实际返回记录的ROWID,最后通过ROWID将最终返回字段值查询出来并返回

    以上共有4层Select嵌套查询,最内层为可替换的不分页原始SQL语句,但是他查询的字段只有ROWID,而没有任何待查询的实际表字段,具体查询实际字段值是在最外层实现的

参考链接

https://blog.csdn.net/use_admin/article/details/83622414
https://blog.csdn.net/death05/article/details/78744250
http://www.yayakq.cn/news/470696/

相关文章:

  • 网络优化的工作内容重庆网站建设seo公司
  • 深圳网站设计推荐刻烟台做网站价格
  • 做明星网站可以做那些子网页电商系统哪家好排行榜
  • 划分切片来做网站app官网
  • 唐河网站制作公司如何自己开一个公众号
  • 做二手网站天津品牌网站建设好处
  • 教做年糕博客网站永久网站建设教程
  • 国外 素材 网站制作公司网站结构图
  • 网约车后台平台网站建设wordpress免备案cdn
  • 定制旅游哪个网站好用青岛营销型网站推广
  • 建一个网站的流程和平县做网站
  • 贸易公司如何做英文网站应该如何做营销型网站
  • 网站建设与维护方式国外做螺栓比较好的网站
  • 成都网站运营维护厂家校园文化建设图片网站
  • 手机网站哪些功能seo长尾快速排名
  • 松江老城做网站上海市建设工程安全协会网站
  • 做网站话术中山企业建网站
  • 广东高端网站设计公司某网站自己做中性笔
  • .net电商网站开发阿里云 建设wordpress
  • 企业网站建设和运营南宁网站优化公司哪家好
  • 化妆培训学校网站源码 下载seo搜索引擎优化人员
  • 云服务器网站建站wordpress 评论
  • 模板建站网页中国空间站vr全景
  • wordpress仿站实战网站服务器租用注意事项
  • 洛阳网站建设学校做网站的公司怎么赚钱
  • 免费刷赞网站推广免费python网站开发招聘
  • 社交做的最好的网站有哪些做网站公司需要什么
  • 建网站做相亲特种作业证查询系统入口
  • 公司建网站制作平台网站建设服务套餐
  • html5网站模板 医院企业网站模板价格