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

百度竞价代运营托管实力网站优化公司首选

百度竞价代运营托管,实力网站优化公司首选,个人简介,外贸网站建设培训分页查询数据#xff0c;需要返回total#xff0c;而这个值一般都是通过count函数实现。但是#xff0c;针对count函数#xff0c;有多种写法#xff0c;如count(*)、count(1) 和 count(column)等。本文主要介绍以上几种写法的差异。 注意#xff0c;这里仅针对MySQL数据…分页查询数据需要返回total而这个值一般都是通过count函数实现。但是针对count函数有多种写法如count(*)、count(1) 和 count(column)等。本文主要介绍以上几种写法的差异。 注意这里仅针对MySQL数据库其他类型的数据库仅供参考。 count()函数简介 count() 函数是标准SQL提供的一个聚合函数可以用来统计某个列值的数量或统计表的行数。count() 函数可以是一个表达式该表达式可以是列名、常量、特定字符等。常见的用法有以下三种 count(1) 用来统计表中的行数 count(*) 用来统计表中的行数 count(column_name) 用来统计指定列值的数目(不统计NULL值)。 需要说明的是因为count函数的参数是表达式所以实际用法有很多但是最常用的还是上面三种形式。 count(*)和count(1) count(*)和count(1)都可以用来统计表中的行数使用上没有差异。 InnoDB handles SELECT COUNT(*) and SELECT COUNT(1) operations in the same way. There is no performance difference.但推荐使用count()因为这是SQL92定义的标准统计行数的语法。 在使用count()时要注意不同存储引擎对其优化效果这里主要介绍MyISAM 引擎和InnoDB 引擎对count(*)的优化。 对于 MyISAM 引擎会把表的总行数存在了磁盘上存放在 information_schema 库中的 PARTITIONS 表中在不加 where 条件时执行 count() 时会直接返回这个总数因此效率很高但是在加 where 限定语句的时候 MySQL 需要对全表进行检索从而得出 count 的总数。MyISAM不支持事务使用的锁是表级锁不会有并发的行操作所以查询的结果是准确的。 而 InnoDB 引擎并没有像 MyISAM 那样把表的总行数存储在磁盘而是在执行 count( )时在不加 where 限定语句时MySQL Server 层需要把数据从引擎里面读出来然后逐行累加得出总数如果加了 where 限定语句需要根据 where 条件从引擎里面筛选出数据然后累加得出总数。InnoDB支持事务并且支持行级锁行可能被并行修改那么缓存记录不准确。 count(column) count(column_name) 用来统计指定列值的数目(不统计NULL值)。 如果column_name是ID等主键字段或非空字段那么统计的结果和count(1)和count(*)的值一样。需要说明的是对于 MyISAM 引擎如果不加 where 条件时直接返回的表中保存的数据总行数值如果加 where 条件时需要走主键索引筛选出值后再统计。对于 InnoDB 引擎不加 where 条件时count(id) 和 count(*) 的处理方式一样MySQL优化器会选择最小树索引age 索引进行遍历统计加 where 条件时需要走主键索引筛选出值后再统计。 如果column_name是非主键字段那么只会统计列值为NULL的行数需要说明的是就这种情况下不管在 InnoDB 引擎 还是在 MyISAM引擎中非主键这个字段如果添加了索引且覆盖该字段则可基于索引统计行数如果未添加索引则会触发全表扫描。 总结 基于count()函数统计行数时count(*)和count(1)都可以用来统计表中的行数基于SQL规范考虑推荐使用count(*)。注意在使用count(*)时要注意不同存储引擎的支持事务的水平如MyISAM不支持事务使用的锁是表级锁不会有并发的行操作所以查询的结果是准确的。InnoDB支持事务并且支持行级锁行可能被并行修改那么缓存记录不准确。且不加where条件时MyISAM 引擎会直接返回这个总数。 基于count(column_name) 统计指定列值的数目时要注意区分主键字段和非主键字段。因为主键字段非空所以统计的结果和count(1)和count(*)的值一样。且不加where条件时MyISAM 引擎会直接返回这个总数。如果是非主键字段不会统计NULL值所以统计的结果和count(1)和count(*)的值可能不一样。且会基于该字段是否使用了索引决定是否基于索引统计还是全表扫描统计。 参考 https://www.runoob.com/sql/sql-func-count.html SQL COUNT() 函数 https://zhuanlan.zhihu.com/p/572387666 深度剖析MySQL count() 函数这下彻底明白了 https://www.cnblogs.com/hider/p/11726690.html MySQL学习笔记count(1)、count()、count字段的区别 https://zhuanlan.zhihu.com/p/28397595 高性能MySQL——Count(1) OR Count() https://zhuanlan.zhihu.com/p/391861774 SQL中的count(1)、count(*) 与 count(列名) 到底有什么区别 高性能MySQL Baron Scbwartz, Peter Zaitsev, Vadim Tkacbenko 著 宁海元、周振兴、彭立勋、翟卫祥 等译
http://www.w-s-a.com/news/629239/

相关文章:

  • 网站模糊设计发布产品的免费平台有哪些
  • 网站建站什么目录桂林网站建设内容
  • 光明新区城市建设局网站长沙营销型网站制作费用
  • 网站建设制度制定wordpress主题哥
  • 门户网站的种类php网站开发实训心得
  • 流程图制作网页网络优化seo
  • 个人公益网站怎么制作wordpress flat theme
  • 做营销型网站的公司篇高端网站愿建设
  • 五莲网站建设维护推广凡科做网站的方法
  • 山东省住房建设厅网站首页网站文章更新怎么通知搜索引擎
  • 商务网站的可行性分析包括大流量网站 优化
  • 推广网站有效的方法网站数据统计
  • 自建视频网站WordPress数据库添加管理员
  • 新民电商网站建设价格咨询网站建设高效解决之道
  • 做网站需要哪些步骤网站设计介绍
  • 物流网站制作目的国外中文网站排行榜单
  • 苏州网站建设招标网站ftp的所有权归谁
  • 未央免费做网站河间网站建设
  • 酒庄企业网站app制作多少钱一个
  • 西安模板建网站网站如何做直播轮播
  • 网站功能需求表百度怎么投放自己的广告
  • 如何免费制作网站网站icp备案费用
  • 网站建设最新教程wordpress表白墙
  • android电影网站开发网站建设与设计实习报告
  • 公司汇报网站建设方案烟台seo网站推广
  • 文章网站哪里建设好找素材的网站
  • 怎么做自己的彩票网站公司建设网站价格
  • 国外比较好的设计网站网站后台无法上传图片
  • 帮别人做网站的公司是外包吗用户登录
  • 关于我们网站模板小莉帮忙郑州阳光男科医院