count(*),count(1)和count(字段)的区别
2019独角兽企业重金招聘Python工程师标准>>>
count(*),count(1)和count(字段)的区别
之前在写sql语句时,常常使用count(*)来执行查询数据条数,也使用过count(字段)来针对某一特殊字段进行查询,今天接触到了count(1)也可以用来进行数据统计,下来查看资料,对它们有了一定的了解。
很多人认为count(1)执行的效率会比count()高,原因是count()会存在全表扫描,而count(1)可以针对一个字段进行查询。其实不然,count(1)和count(*)都会对全表进行扫描,统计所有记录的条数,包括那些为null的记录,因此,它们的效率可以说是相差无几。而count(字段)则与前两者不同,它会统计该字段不为null的记录条数。
下面它们之间的一些对比:
1)在表没有主键时,count(1)比count(*)快;
2)有主键时,主键作为计算条件,count(主键)效率最高;
3)若表格只有一个字段,则count(*)效率较高。
转载于:https://my.oschina.net/u/3136594/blog/2999777
count(*),count(1)和count(字段)的区别相关推荐
- MySQL count(*)、count(1) 和count(字段)的区别以及count()查询优化手段
MySQL的count(*).count(1) 和count(字段)的区别以及count()查询优化手段. 文章目录 1 几种count查询的区别 2 优化COUNT()查询 1 几种count查询的 ...
- count(*)、count(1)、count(字段)的区别
在统计记录行中常常会使用到count函数,通常有count(*),count(1),count(字段)这几种写法,在实际执行中可能有些许区别. count(字段) 如果字段中包含null,不会被统计记 ...
- sql中 count(*),count(1)以及count(字段)的区别
前言 记得很早以前就听说,在使用count的时候要用count(1)而不要用count(*),因为使用count(*)的时候会对所有的列进行扫描,相比而言count(1)不用扫描所有列,所以count ...
- 数据库面试题【十九、count(字段) count(主键 id) count(1)count(*)的区别】
count(可空字段) 扫描全表,读到server层,判断字段可空,拿出该字段所有值,判断每一个值是否为空,不为空则累加 count(非空字段)与count(主键 id) 扫描全表,读到server层 ...
- count(*)和count(1)和count(字段)的区别
执行效果上看: count(*)包括了所有的列,相当于行数,在统计结果的时候,不会忽略字段值为NULL的列: count(1)包括了忽略所有列,用1代表代码行,在统计结果的时候,不会忽略字段值为NUL ...
- select count(1) 、select count(*) 、select count(字段)的区别、及性能
select count(*) from teacher; //11 select count(1) from teacher; //11 select count(id) from teacher; ...
- count(*)和count(1)和count(列名)的区别
count是一种最简单的聚合函数,一般也是我们第一个开始学习的聚合函数,那么他们之间究竟由什么区别呢? 有的人说count(1)和count(*)他们之间有区别,而有的人说他们之间没有区别那么他们之间 ...
- count(*),count(1),count(列)区别
执行效果: count(1) and count(*) 当表的数据量大些时,对表作分析之后,使用count(1)还要比使用count(*)用时多了! 从执行计划来看,count(1)和count()的 ...
- count(*)、count(1)和count(列名)的区别
count(*).count(1)和count(列名)的区别 1.执行效果上: l count(*)包括了所有的列,相当于行数,在统计结果的时候,不会忽略列值为NULL l count(1)包 ...
- 关于sql语句中的count(*),count(1),count(具体字段)的介绍
在sql语句中有一个聚合函数count():这个函数里面可以写*,可以写数字(不仅仅只可以写1),可以写具体字段,他们之间有什么区别呢? 查阅资料得知,count(*)与count(1)在各种数据库服 ...
最新文章
- 洛谷——P2035 iCow
- OpenGL的几何变换4之内观察全景图
- 服务机器人---方案设计中需要评估确认的点
- android 按钮动画效果_【css特效】按钮动画 - 按压效果
- HTML5新增的video标签,HTML5中video标签的使用方法
- php png 输出,PHP直接输出一张图片代码写法
- Maven异常总结001---Maven project导入到myeclipse时候出现异常:could not get mojo execution paramater value
- Hadoop,HBASE启动命令
- 华为access、trunk、hybird接口从tag和untag进行了解。
- 爱特php文件管理器2.8_爱特全能网站文件专家
- ofdm导频信道估计matlab,基于导频的OFDM系统信道估计
- java rtf读取,java读取rtf
- 英语口语常用1368词汇
- 详解数据库三大范式、BCNF范式
- uniapp 微信支付功能
- 挑战练习13.6 删除crime 记录
- 中断处理过程示意图_中断服务程序流程图
- python语言支持中文输出_python2输出汉字的解决办法暨python2/python3的编码环境参数的查看-Go语言中文社区...
- MapReduce中名字的通俗解释--故事会
- 机器学习-新闻分类案例
热门文章
- 适合自己的才是最好的
- 第九章 深度强化学习-Double DQN
- OpenCV获取图像的高和宽(Iplimage)
- 【Matlab学习笔记】【函数学习】一(延时函数pause)
- 二进制“==”: 没有找到接受“Point”类型的左操作数的运算符(或没有可接受的转换)
- Fragstats 4.2 批处理(geotiff格式)
- 详解第一个CUDA程序kernel.cu
- sns.barplot/sns.countplot/sns.boxplot参数设置
- python 删除满足条件的行
- GEE学习总结(2)——点矢量绘制与坐标系问题