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

旭辉网站建设在线制作h5网页

旭辉网站建设,在线制作h5网页,h5网站模板开发,微官网和移动网站区别MySQL count(1) 真的比 count(*) 快么? 反正同事们都是这么说的#xff0c;我也姑且觉得对吧#xff0c;那么没有自己研究一下究竟#xff1f;如果我告诉你他们一样#xff0c;你信么#xff1f; 有 Where 条件的 count#xff0c;会根据扫码结果count 一下所有的行数我也姑且觉得对吧那么没有自己研究一下究竟如果我告诉你他们一样你信么 有 Where 条件的 count会根据扫码结果count 一下所有的行数其性能更依赖于你的 Where 条件所以文章我们仅针对没有 Where 的情况进行说明。 MyISAM 引擎会把一个表的总行数记录了下来所以在执行 count(*) 的时候会直接返回数量执行效率很高。在 MySQL 5.5 以后默认引擎切换为 InnoDBInnoDB 因为增加了版本控制(MVCC)的原因同时有多个事务访问数据并且有更新操作的时候每个事务需要维护自己的可见性那么每个事务查询到的行数也是不同的所以不能缓存具体的行数他每次都需要 count 一下所有的行数。那么 count(1) 和 count(*)有区别么 InnoDB handles SELECT COUNT(*) and SELECT COUNT(1) operations in the same way. There is no performance difference. 这是官网的解释直接点击阅读原文查看官文所以两种实现其实一样那么具体为什么一样呢 探究这个问题首先我们需要理解 count 的含义如下是官网给出的定义 Returns a count of the number of non-NULL values of expr in the rows retrieved by a SELECT statement. The result is a BIGINT value. 大致的解释是返回 SELECT 语句检索的行中 expr 的非 NULL 值的计数到这里我们就明白了首先它是一个聚合函数然后对 SELECT 的结果集进行计数但是需要参数不为 NULL。那么我们继续阅读官网的内容 COUNT(*) is somewhat different in that it returns a count of the number of rows retrieved, whether or not they contain NULL values. 大致的内容是说count(*) 不同他不关心这个返回值是否为空都会计算他的count因为 count(1) 中的 1 是恒真表达式那么 count(*) 还是 count(1) 都是对所有的结果集进行 count所以他们本质上没有什么区别。 当然这个地方 InnoDB 本身也做了一些优化它会使用最小的二级索引来进行 count 的查询优化。如果没有二级索引才会选择聚簇索引这样的设计单从 IO 的角度就节省了很多开销。 到这里我们明白了 count(*) 和 count(1) 本质上面其实是一样的那么 count(column) 又是怎么回事呢 count(column) 也是会遍历整张表但是不同的是它会拿到 column 的值以后判断是否为空然后再进行累加那么如果针对主键需要解析内容如果是二级所以需要再次根据主键获取内容又是一次 IO 操作所以 count(column) 的性能肯定不如前两者喽如果按照效率比较的话count(*)count(1)count(primary key)count(column) 既然 count(*) 在查询上依赖于所有的数据集是不是我们在设计上也需要尽量的规避全量 count 呢通常情况我们针对可预见的 count 查询会做适当的缓存可以是 Redis也可以是独立的 MySQL count 表当然无论是哪种方式我们都需要考虑一致性的问题。转载于:https://www.cnblogs.com/CQqf2019/p/11075555.html
http://www.yutouwan.com/news/54642/

相关文章:

  • asp网站关键词wix做中文网站怎么样
  • 网站制作的内容包含学校做网站的软件
  • 高端企业网站建设费用企业所得税优惠政策2022年最新
  • 电商网站的二级怎么做叮当设计app官方下载
  • 行知智网站开发天津公司网站制作公司
  • 潮州市工程建设网站个人网站前置审批项
  • 电子商务网站建设与维护李建忠下载360指数查询工具
  • 网络云网站零基础学全屋定制设计
  • 网站认证金额怎么做分录百度网站建设公司
  • 网站建设技术有哪些wordpress主页不显示博客文章
  • 免费织梦网站源码下载杭州淘策网站开发
  • 网站集群建设和网站集约化韶关网站设计公司
  • 受欢迎的宜昌网站建设ido手表官网
  • 建站公司杭州天元建设集团有限公司商业承兑汇票信誉怎么样
  • 镇江建站wordpress 浮动 插件
  • 绍兴网站开发公司分享wordpress小程序源码
  • 北京双诚建设监理公司网站黄冈做网站价格
  • 濮阳网站建设 公司名字建立网站坐等访问者发现
  • 九江网站建设求职简历温州网站设计
  • 无锡网站怎么推广效果好画册设计报价明细表
  • 人力资源网站模板网络技术服务公司
  • 做网站开发需要考什么证书安徽安能建设集团网站
  • 网站布局设计软件建设企业高端网站
  • 优化网站找哪家做自己的第一个网站
  • 公司网站建设应注意男女做那个网站动态图
  • 重庆开发网站免费互联主机
  • 企业网网站营销团队建设与管理
  • 免费表白网站制作ui设计自学视频教程
  • 深圳少儿编程培训机构岳阳seo招聘
  • 南昌企业建站系统模板网站做可信认证