count(*) 将返回表格中所有存在的行的总数包括值为 null 的行,然而 count(列名) 将返回表格中除去 null 以外的所有行的总数 (有默认值的列也会被计入),这点对于所有数据的 COUNT 计算都是一样的
count(1) 与 count(*) 比较 :
1> 如果数据表没有主键,那么 count(1) 比 count(*) 快
2> 如果有主键的话,那主键 (联合主键) 作为 count条件也比 count(*) 要快
3> 如果你的表只有一个字段的话那 count(*) 就是最快
在不加 WHERE 限制条件的情况下,COUNT(*) 与 COUNT(COL) 基本可以认为是等价的,但是在有 WHERE 限制条件的情况下,COUNT(*) 会比 COUNT(COL) 快非常多
COUNT(*) 通常是对主键进行索引扫描,而COUNT(COL)就不一定了,另外前者是统计表中的所有符合的纪录总数,而后者是计算表中所有符合的COL的纪录数
count(*) 与 count(1) 两者比较,主要还是要取决于 count(1) 所相对应的数据字段,如果count(1)是聚索引 id 那肯定是count(1)快,但是差的很小,因为 count(*) 自动会优化指定到那一个字段,所以没必要去 count(?) 用 count(*) sql会自动完成优化
1> 任何情况下 SELECT COUNT(*) FROM tablename 是最优选择
2> 尽量减少 SELECT COUNT(*) FROM tablename WHERE COL = 'value’ 这种查询
3> 杜绝 SELECT COUNT(COL) FROM tablename 的出现

MySQL count(1) count(*) 比较 详解相关推荐

  1. mysql数据库中count的作用_详解 MySQL中count函数的正确使用方法

    1. 描述 在MySQL中,当我们需要获取某张表中的总行数时,一般会选择使用下面的语句 select count(*) from table; 其实count函数中除了*还可以放其他参数,比如常数.主 ...

  2. php mysql无限_php+mysql实现无限分类实例详解

    php+mysql实现无限分类实例详解 fenlei($arr[$i][0]);   //$arr[$i][1]表示第$i+1个分类的id的值.进行递归,也就是把自己的id作为f_id参数把自己的子类 ...

  3. mysql入门优化_MySQL数据库:MySQL十大优化技巧详解

    本文主要向大家介绍了MySQL数据库的MySQL十大优化技巧详解,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. WEB开发者不光要解决程序的效率问题,对数据库的快速访问和相应也是 ...

  4. mysql中 where in 用法详解

    https://blog.csdn.net/haibo0668/article/details/52584307 sssss mysql中 where in 用法详解 我是高手高手高高手 2016-0 ...

  5. MySQL数据库update语句使用详解

    MySQL数据库update语句使用详解 本篇文章我们来讲讲如何对MySQL数据库进行更新操作,对数据库进行增删改查操作是我们必会的基础之一,会了这个增删改查我们可以在这基础上去编写更多的东西,废话不 ...

  6. mysql cluster rpm包的作用_MySQL之——MySQL Cluster集群搭建详解(基于RPM安装包)

    1.下载MySQL-cluster 7.3.7 http://dev.mysql.com/downloads/cluster/ 2.环境清理及安装 1)清理CentOS6.5自带的mysql服务,其中 ...

  7. linux 用root安装mysql数据库_Linux上安装Mysql及简单的使用详解

    1. 安装mysql sudo apt-get update sudo apt-get install mysql-server sudo apt-get install python-mysqldb ...

  8. docker导入MySQL文件_Docker容器中Mysql数据的导入/导出详解

    前言 Mysql数据的导入导出我们都知道一个mysqldump命令就能够解决,但如果是运行在docker环境下的mysql呢? 解决办法其实还是用mysqldump命令,但是我们需要进入docker的 ...

  9. 深入mysql慢查询设置的详解

    深入mysql慢查询设置的详解 在web开发中,我们经常会写出一些SQL语句,一条糟糕的SQL语句可能让你的整个程序都非常慢,超过10秒一般用户就会选择关闭网页,如何优化SQL语句将那些运行时间 比较 ...

  10. mysql查询语句详解_基于mysql查询语句的使用详解

    1> 查询数据表除了前三条以外的数据. 起初我想到的是这条语句 SELECT * FROM admin WHERE userid NOT IN (SELECT userid FROM admin ...

最新文章

  1. 构造 HDOJ 5400 Arithmetic Sequence
  2. python中一共有多少个关键字-python 查看所有的关键字
  3. 计算机视觉Computer Vision-机器学习Machine Learning近年部分综述
  4. 互联网公司面试经历(转载)
  5. 2019年1月已到,Java 8 要收费了吗?
  6. 远程桌面连接_Win10 系统远程桌面连接怎么打开
  7. 索罗斯基金管理公司 CIO:比特币正在抢夺黄金的市场份额
  8. extjs 网站首页table布局,秀一下
  9. 文强+光裕+唐骏,告诉我们什么?
  10. 数据库在线自生成ER图
  11. 基于WebService实现设备状态监控Demo(含源码)
  12. 试用了40+款日记APP,才知道好软件有多难求...
  13. 网络科学论坛纪要-2012
  14. Win10的Git中文文件名繁体火星文乱码问题
  15. 数据禾|甘肃省国家湿地公园功能区划数据
  16. 手机方案厂商怨高通门槛高 联发科影响力犹存
  17. 自己动手写编译器:中间代码生成1
  18. CRM管理系统软件哪家好?
  19. MATLAB控制Maxon Motors EPOS2 Motor
  20. 修改pdf文件内容可以使用什么编辑工具

热门文章

  1. Oracle 服务器 进程中的 LOCAL=NO 和 LOCAL=YES
  2. redis api-hash
  3. 20175213 2018-2019-2 《Java程序设计》第6周学习总结
  4. GenericServlet接口
  5. 在linux或者windows上直观查看linux下生成的自签名证书
  6. 搭建git服务器(权限管理)
  7. 浅谈格雷码(Grey Code)在信息学竞赛中的应用
  8. Mac OS X下安装和配置Maven
  9. UML实践---用例图、顺序图、状态图、类图、包图、协作图
  10. js设计模式-组合模式