(count(*)和count(1)的区别

count(1) and count(*)两者的主要区别是:

1、执行效果上:

count(1),其实就是计算一共有多少符合条件的行。

1并不是表示第一个字段,而是表示一个固定值。

其实就可以想成表中有这么一个字段,这个字段就是固定值1,count(1),就是计算一共有多少个1。count(*),执行时会把星号翻译成字段的具体名字,效果也是一样的,不过多了一个翻译的动作,比固定值的方式效率稍微低一些。

2、执行效率上:

他们之间根据不同情况会有些许区别,MySQL 会对count()做优化。(1)如果表中只有一列,则count( )效率最优。(2)如果表有多列,且存在主键,count (主键列名)效率最优,其次是:count (1) >count( *)。(3)如果表有多列,且不存在主键,则count(1 )效率优于count( *)

3、从执行结果来说:

1、count(1)和count ()之间没有区别,因为count () count (1)都不会去过滤

2、(排除)空值,但count (列名)就有区别了,因为count (列名)会过滤空值。

文章转载与以下连接,个人觉得讲解的很清楚,如果有侵权,请联系我进行删除

链接: https://baijiahao.baidu.com/s?id=1725523972208062102&wfr=spider&for=pc.

(count(*)和count(1)的区别相关推荐

  1. count(1)、count(*) 与 count (列名) 的执行区别

    (给视学算法加星标,提升数据技能) 转自:BigoSprite https://blog.csdn.net/iFuMI/article/details/77920767 执行效果:  1.count( ...

  2. select count(*)加其他字段_count(1)、count(*) 与 count(列名) 的执行区别

    (给ImportNew加星标,提高Java技能) 作者:BigoSprite blog.csdn.net/iFuMI/article/details/77920767 执行效果: 1.  count( ...

  3. 关于数据库优化1——关于count(1),count(*),和count(列名)的区别,和关于表中字段顺序的问题...

    1.关于count(1),count(*),和count(列名)的区别 相信大家总是在工作中,或者是学习中对于count()的到底怎么用更快.一直有很大的疑问,有的人说count(*)更快,也有的人说 ...

  4. Mysql之count(*),count(1),count(field)区别、性能差异

    目录 前言 COUNT(*)与 COUNT(1) MyISAM引擎中的COUNT(*)与 COUNT(1) Innodb引擎中的COUNT(*)与 COUNT(1) 实验 原理 结论 Count(1) ...

  5. mysql下count(*)和count(1)的区别

    2019独角兽企业重金招聘Python工程师标准>>> 今天看公司项目发现了一个奇怪sql写法 select count(8) from .... 这也许是开发人员不小心或者是习惯把 ...

  6. 执行COUNT(1)、COUNT(*) 与 COUNT(列名) 到底有什么区别?

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:干掉 Navicat:这个 IDEA 的兄弟真香!个人原创100W+访问量博客:点击前往,查看更多 来源:blo ...

  7. MySQL COUNT函数优化及count(1)/count(*)/count(列名)的区别

    count函数优化 使用近似值: 在某些应用场景中,不需要完全精确的值,可以参考使用近似值来代替,比如可以使用explain来获取近似的值.其实在很多OLAP的应用中,需要计算某一个列值的基数,有一个 ...

  8. mysql55和57的区别_技术分享 | MySQL:count(*)、count(字段) 实现上区别

    我们继续来讨论一下 count(*).count(字段)实现上的区别.注意我们这里都使用 Innodb 做为存储引擎,不讨论其他引擎.因为了有了前面的讨论,更容易看出它们的区别,这里我们有如下注意点: ...

  9. MySQL中count(1),count(*),count(某字段)等用法联系和区别

    一. 从执行结果来看 count(*):所有行进行统计,包括NULL行count(1):所有行进行统计,包括NULL行count(column):对column中非Null进行统计 二. 从执行效率上 ...

  10. mysql中count(*)和count(1)和count(column)区别

    在日常的mysql使用中,我们经常会看到SELECT COUNT(*).SELECT COUNT(1)等查询语句,他们到底有什么区别呢?今天我就来总结下. 我们先从函数的含义说起: count() 统 ...

最新文章

  1. 监管大屏系统_高速公路监管系统大屏可视化
  2. java弧线_数据可视化API之弧线图实现
  3. 重装win8系统后变成C盘了别的分区的资料怎样恢复
  4. 面试题:sql数据查询
  5. .NET开发人员犯的6大安全错误
  6. jdk重启后步行_向后介绍步行以一种新颖的方式来预测未来
  7. 手机客户端和服务器端通信
  8. pyecharts动态图表嵌入ppt
  9. std::cunction() 简单描述
  10. manim动画部分目录
  11. 正则系列之量词(Quantifiers)
  12. 大一c语言知识点总结树状图,AK宝典丨哟,写bug呐?19级数据结构满分dalao在线帮你划重点!...
  13. 董氏奇穴学习记录(上课记录)
  14. 我的世界Bukkit插件开发(4)——命令
  15. 安装Anaconda出现Error opening file for writing错误最简单有效的办法
  16. secureFX上传中文文件名乱码
  17. N46期第十二周作业
  18. 互联网运营是青春饭吗?老运营告诉你答案
  19. Crossing Number of Graphs 读书笔记
  20. 足球/篮球专业术语(Football and Basketball terms)

热门文章

  1. 进阶篇之纯css 字体实现五角星(半颗星)评分
  2. 一个合格的程序员也是一名合格的侦探---Debug篇
  3. 东哥手把手带你刷二叉树|第三期
  4. 给计算器写白盒测试用例Test case
  5. Qt之实现图片或按钮等控件的倒影效果
  6. C++文件操作详解(ifstream、ofstream、fstream)
  7. 将视频转成jpg图片
  8. Axure RP Pro 6注册码
  9. C++培训_004_制作可视化wifi发射小程序
  10. php qq邮箱找回密码,重要!解决QQ邮箱用户重置密码链接无效的问题