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

牛商网做的网站怎么样百度网址导航主页

牛商网做的网站怎么样,百度网址导航主页,沈阳模板网站制作,百度网盘app怎么打开链接select count(*) 应该是一个比较常用的语句#xff0c;用来统计记录行数。但是#xff0c;慢慢地你会发现#xff0c;这个语句越来越慢了#xff0c;为什么呢#xff1f;count(*) 的实现方式首先#xff0c;我们来看下它的实现方式。MySQL 中#xff0c;不同的存储引擎用来统计记录行数。但是慢慢地你会发现这个语句越来越慢了为什么呢count(*) 的实现方式首先我们来看下它的实现方式。MySQL 中不同的存储引擎count(*) 的实现方式是不同的。1、MyISAM 引擎比较简单粗暴直接将表的总行数存储在磁盘上因此效率很高2、InnoDB 引擎中执行时需要一行行的把数据查出来然后累加为啥 MyISAM 就可以这样做呢因为它不支持事务啊不用担心数据不一致的问题。而 InnoDB 就不一样了。由于 MVCC 的存在InnoDB 在当前执行环境下对一共有多少数据行是不确定的比如假设表 t 中有 1000 条数据有下面三个用户并行的会话1、A 启动事务查询表的总行数 2、C 直接插入一条数据然后查询总行数 3、B 启动事务插入一条数据然后查询总行数 4、C 查询总行数注意上面启动的事务都没有提交。imageA、B、C 查询的结果都不相同。B 读到的是 1002是因为可重复读隔离级别的存在而 C 未开启事务因此无法看到别的事务的更新综上InnoDB 引擎中在每一个会话中都需要逐行读取数据然后计数返回总行数。InnoDB 对 count(*) 的优化InnoDB 中主键索引存储的是数据辅助索引存储的只是主键值。因此辅助索引比主键索引小得多轻量得多。这种情况下InnoDB 在执行 count(*) 时就会判断使用哪个索引会选择最小的树来进行遍历。在保证逻辑正确的前提下尽量减少扫描的数据量是数据库系统设计的通用法则之一。小结1、由于 MyISAM 引擎不需要支持事务因此可以快速返回 count(*) 2、show table status 命令虽然返回很快但是不准确 3、InnoDB 执行 count(*) 时会遍历全表因此性能较差count(*)、count(1)、count(主键)、count(字段)的区别以下基于 InnoDB。含义区别count() 是一个聚合函数对于返回的结果集会逐行判断若返回的不是 NULL就会加 1否则不加。因此count(*)、count(主键 id) 和 count(1) 都表示返回满足条件的结果集的总行数而 count(字段则表示返回满足条件的数据行里面参数“字段”不为 NULL 的总个数。性能区别分析性能考虑以下几个原则1、server 层要什么就会返回什么 2、InnoDB 只返回必要的值 3、优化器只优化了 count(*)对于 count(主键id)InnoDB 会遍历全表取每行的主键 id返回给 server 层server 层拿到数据后进行判断累加。对于 count(1)InnoDB 仍遍历全表但是不取值server 层对返回的每一行数据新增一个 1然后进行判断累加因此count(1) 要更快些因为无需取值。从引擎返回 id 会涉及到解析数据行以及拷贝字段值的操作。对于 count(字段)1、如果这个“字段”是定义为 not null 的话一行行地从记录里面读出这个字段判断不能为 null按行累加2、如果这个“字段”定义允许为 null那么执行的时候判断到有可能是 null还要把值取出来再判断一下不是 null 才累加。但是 count(*) 是例外并不会把全部字段取出来而是专门做了优化不取值。count(*) 肯定不是 null按行累加。结论按照效率排序的话count(字段)count(主键 id)count(1)≈count(*)所以我建议你尽量使用 count(*)。作者hoxis链接https://www.jianshu.com/p/40b6ead97aa0来源简书简书著作权归作者所有任何形式的转载都请联系作者获得授权并注明出处。
http://wiki.neutronadmin.com/news/417513/

相关文章:

  • 网站后台管理入口网站开发广告宣传
  • 做淘宝客必须建网站吗网站建设一条龙服务
  • 电商网站排行榜一般网站的字体大小
  • 自己制作的网站互联网金融营销案例
  • 网站的开发环境论文wordpress 页面 评论
  • 网站建设培训班南宁桂林seo公司
  • 案例分析网站桂林网站艰涩
  • 网站开发可行性分析报告个人网页设计尺寸
  • 怎样查网站空间地址免费oa办公系统
  • 设置网站域名商品展示网站模板源码
  • 建筑公司网站需求wordpress 后台忘了
  • apache 配置php网站河南省住房和城乡建设厅官方网站
  • 手机网站判断跳转wordpress下滑显示导航
  • 上海市奉贤区建设局网站网站模板如何优化
  • 可以做生存分析的网站中国代加工网站
  • 免费炫酷企业网站源码长沙小程序专业开发公司
  • 这么联系做网站推广证明做二维码打款网站链接
  • 做视频解析网站播放器和接口赣州星亚网络传媒有限公司
  • 个个大公司网站seo搜索优化 指数
  • app网站推广平台数字选用平台介绍
  • 网站开发实例教程实训心得家在临深业主论坛家在深圳
  • 做网站 成都c 博客网站开发教程
  • 可以自己做课程的网站百度搜索网站图片
  • 用什么软件做网站图片注册公司流程和费用多少
  • 泰安网站建设538sw网站如何使用cdn
  • 网站设计师主要做什么的江苏泰州建设局网站
  • 新站seo外包无锡网站建设君通科技公司
  • 南京网站推广手机上如何申请营业执照
  • 安卓毕业设计代做网站南宁网站建设服务公司
  • 北海哪家公司做网站建设研发低价网站建设咨询