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

智能建站制作枣庄科技馆里度周末

智能建站制作,枣庄科技馆里度周末,toxue外贸网,网站建设系统公司Java面试:mysql与oracle分页的有什么区别 相信许多人在日常工作中都会用到分页,比如日常查询数据量太大,而我们只需要其中的几条即可,所以这时就会去使用分页去查询,今天主要就mysql与oracle的分页进行分析。 MySQL 分…

Java面试:mysql与oracle分页的有什么区别


        相信许多人在日常工作中都会用到分页,比如日常查询数据量太大,而我们只需要其中的几条即可,所以这时就会去使用分页去查询,今天主要就mysql与oracle的分页进行分析。

  • MySQL 分页语句简单的写法:
    select * from table limit m,n;  // m = (startPage-1)*pageSize, n = pageSize
  • Oracle 分页语句简单的写法:
	select * from table where rownum <= a;

        从上面的sql中我们可以看出两者的写法区别,首先mysql分页用limit,而oracle是用rownum,当然我上面所写的sql仅仅只能满足于随机拿取几条数据的情况,下面我们开始今天的正题,如何两种数据库的分页。

  • 首先我们来讲解mysql的写法
	SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset  

        LIMIT 可以接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目,初始记录行的偏移量是 0(而不是 1)。

         - 示例

	select * from book limit 2,5;  // 从第三条数据开始拿取5条数据
	select* from book limit 5; // 获取前5行数据
  • 接下来看看oracle的分页写法:
	select * from book  where rownum= count;  //count 代表需要获取的行数/** 符号使用:= ,> ,< ,>= ,<=*/

         - 示例

	select * from book where rownum < 10;//获取0-10之间的数据,共9行
	select * from (select rownum rn,A.* from book A)where rn>5 and  rn<20;    //获取6-20行的数据,不包含第20行
	select * from (select rownum rn , A.* from book A where rownum <100 )where rn > 50;   //获取51-100的数据,不包含100行(注意:此种写法不可用于含有分组查询的时候)

对比这三种写法,绝大多数的情况下,第一个只是拿取数据给定的前几条数据,第二个查询和第三个查询是给定一个查询范围,且第三个查询的效率比第二个高得多。

这 是由于CBO优化模式下,Oracle可以将外层的查询条件推到内层查询中,以提高内层查询的执行效率。对于第三个查询语句,第一层的查询条件WHERE ROWNUM <= 100就可以被Oracle推入到内层查询中,这样Oracle查询的结果一旦超过了ROWNUM限制条件,就终止查询将结果返回了。

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

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

http://www.yayakq.cn/news/995662/

相关文章:

  • 虚拟主机网站建设大连网站建设新图闻
  • 可视化网站建设软件天河手机建网站
  • 机票网站制作网站快速建设入门教程
  • 烟台网站设计单位网站内链布局
  • 用什么软件做网站最简单苏州设计工作室
  • 江西省建设网站手机电商网站 模板
  • 在盐城做网站的网络公司电话重庆艺术字体设计
  • 满山红厦门网站建设网站站内链接怎么做
  • phpcms v9网站地图企业建站用什么主机
  • 铜仁建设公司网站北京软件开发工程师
  • 湖南网站设计企业有什么网站可以做商品展示的吗
  • 网站特色分析html网站运行时间代码
  • 公司免费网站模板郑州网站建设xinsu360
  • 徐州网站排名微信小程序登录平台
  • 菏泽培训网站建设注册深圳公司流程
  • 手机建造网站没有网站可以做网络推广吗
  • 支付功能网站建设想做网站的客户在哪找
  • 网站源码 预览phpcms多个网站
  • 亮点云建站定西市建设局网站
  • 正规网站设计制作公司创意网络广告
  • 天津网站策划网站不支持ie8
  • 英文网站推广方法房山区网站建设
  • 网站优化专家18600119496网站推荐入口
  • 郑州那里能设计网站备案用的网站建设规划书怎么写
  • 58同城给做网站洛阳网站设计
  • 门户网站cms程序网站制作建设有哪些
  • 做网站找合作伙伴中国石油天然气第六建设公司网站
  • 如何成为网站开发工程师网页网站的区别
  • 台州建站服务哪里有网站建设服务
  • 企业网站推广是不是必要的临桂建设局网站