网易首页 > 网易号 > 正文 申请入驻

执行count(1)、count(*) 与 count(列名) 这次搞懂了!

0
分享至

1. count(1) and count(*)

从执行计划来看,count(1)和count(*)的效果是一样的。

当表的数据量大些时,对表作分析之后,使用count(1)还要比使用count(*)用时多!

当数据量在1W以内时,count(1)会比count(*)的用时少些,不过也差不了多少。

如果count(1)是聚集索引时,那肯定是count(1)快,但是差的很小。

因为count(*),会自动优化指定到那一个字段。所以没必要去count(1),使用count(*),sql会帮你完成优化的

因此:在有聚集索引时count(1)和count(*)基本没有差别!

2. count(1) and count(字段)

两者的主要区别是:

  • count(1) 会统计表中的所有的记录数,包含字段为null 的记录。

  • count(字段) 会统计该字段在表中出现的次数,忽略字段为null 的情况。即不统计字段为null 的记录。

3. count(*) 和 count(1)和count(列名)区别

执行效果上:

  • count(*)包括了所有的列,相当于行数,在统计结果的时候,不会忽略为NULL的值。

  • count(1)包括了忽略所有列,用1代表代码行,在统计结果的时候,不会忽略为NULL的值。

  • count(列名)只包括列名那一列,在统计结果的时候,会忽略列值为空(这里的空不是指空字符串或者0,而是表示null)的计数,即某个字段值为NULL时,不统计。

执行效率上:

  • 列名为主键,count(列名)会比count(1)快 ,面试宝典:https://www.yoodb.com

  • 列名不为主键,count(1)会比count(列名)快

  • 如果表多个列并且没有主键,则 count(1 的执行效率优于 count(*)

  • 如果有主键,则 select count(主键)的执行效率是最优的

  • 如果表只有一个字段,则 select count(*)最优。

实例分析


create table counttest(name char(1),age char(2));
insert into counttest values('a', '14'),('a', '15'),('a', '15'),('b', NULL),('b', '16'),('c', '17'),('d', null),('e', '');
select name,count(name),count(1),count(*),count(age),count(distinct(age))from counttestgroup by name;

结果如下:


作者:BigoSprite https://blog.csdn.net/iFuMI/article/details/77920767

公众号“Java精选”所发表内容注明来源的,版权归原出处所有(无法查证版权的或者未注明出处的均来自网络,系转载,转载的目的在于传递更多信息,版权属于原作者。如有侵权,请联系,笔者会第一时间删除处理!

最近有很多人问,有没有读者交流群!加入方式很简单,公众号Java精选,回复“加群”,即可入群!

https://www.yoodb.com3000+道面试题,包含Java基础、并发、JVM、线程、MQ系列、Redis、Spring系列、Elasticsearch、Docker、K8s、Flink、Spark、架构设计等,在线随时刷题!

------ 特别推荐 ------

特别推荐:专注分享最前沿的技术与资讯,为弯道超车做好准备及各种开源项目与高效率软件的公众号,「大咖笔记」,专注挖掘好东西,非常值得大家关注。点击下方公众号卡片关注

文章有帮助的话,点在看,转发吧!

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
10万人冲上街,台湾要变天!退役老将喊话大陆:中国人不打中国人

10万人冲上街,台湾要变天!退役老将喊话大陆:中国人不打中国人

趣知史馆
2024-06-03 19:50:03
酥7玻璃实锤!第一批5000个估计要全换,取了个好听的名字。

酥7玻璃实锤!第一批5000个估计要全换,取了个好听的名字。

户外小阿隋
2024-06-30 19:29:51
欧洲杯最神奇队诞生:4场0进球,靠2个乌龙闯入8强,创造64年历史

欧洲杯最神奇队诞生:4场0进球,靠2个乌龙闯入8强,创造64年历史

侃球熊弟
2024-07-02 02:15:12
9项数据全面落后!郑钦文温网一轮游,赛点送双误出局,浪费好签

9项数据全面落后!郑钦文温网一轮游,赛点送双误出局,浪费好签

排球黄金眼
2024-07-02 01:45:58
韩国首尔市中心交通事故死亡人数升至9人

韩国首尔市中心交通事故死亡人数升至9人

环球网资讯
2024-07-01 22:57:55
主动投案,安徽桐城市人民医院心血管内科原主任何林生接受审查调查

主动投案,安徽桐城市人民医院心血管内科原主任何林生接受审查调查

鲁中晨报
2024-07-01 16:47:06
乌军疑似摧毁S-500!菲律宾接收“布拉莫斯”:俄媒没敢用中文说

乌军疑似摧毁S-500!菲律宾接收“布拉莫斯”:俄媒没敢用中文说

鹰眼Defence
2024-06-29 17:13:08
中俄高层将出席上合峰会,莫迪不来是件好事

中俄高层将出席上合峰会,莫迪不来是件好事

乡野小珥
2024-07-01 19:23:36
高考考完,女儿就去旅游,买手机笔记本; 分数出来后,我呆若木鸡

高考考完,女儿就去旅游,买手机笔记本; 分数出来后,我呆若木鸡

校长侃财
2024-06-28 20:37:46
国内六大"名模":吕燕最丑,何穗最骚,她用身体为自己博得一线地位

国内六大"名模":吕燕最丑,何穗最骚,她用身体为自己博得一线地位

凤幻洋
2024-05-25 09:24:00
一觉醒来!美大选发生突变,下任总统毫无悬念?轮到奥巴马担忧了

一觉醒来!美大选发生突变,下任总统毫无悬念?轮到奥巴马担忧了

阿离家居
2024-07-01 20:19:01
俄罗斯都开始用T55了?中国800架歼7/8、3000辆T55,能派上用场?

俄罗斯都开始用T55了?中国800架歼7/8、3000辆T55,能派上用场?

青年的背包
2024-07-02 04:47:46
“跌落神坛”的5大保健品,实际根本没有什么用,你吃过哪几种?

“跌落神坛”的5大保健品,实际根本没有什么用,你吃过哪几种?

梦录的西方史话V
2024-06-19 18:05:56
6岁白血病男童范裕喆,花400万治病,去世后家属才知他被当小白鼠

6岁白血病男童范裕喆,花400万治病,去世后家属才知他被当小白鼠

咖啡店的老板娘
2024-06-30 21:26:19
最后关头,冯德莱恩被要求辞职,中方反制再加码,欧盟成最大输家

最后关头,冯德莱恩被要求辞职,中方反制再加码,欧盟成最大输家

通文知史
2024-07-01 19:00:02
特朗普完全赞同:核灭绝中国是未来之路!

特朗普完全赞同:核灭绝中国是未来之路!

雪中风车
2024-06-30 18:43:07
惊!哈马斯和中间人谈判内容曝光

惊!哈马斯和中间人谈判内容曝光

亡海中的彼岸花
2024-07-01 00:55:02
大哥还是大哥,深中通道的最大赢家是广州!

大哥还是大哥,深中通道的最大赢家是广州!

小鹿姐姐情感说
2024-07-01 22:55:47
惊天动地的震撼!俄军投下了人类有史以来第一枚 FAB3000 重型航弹

惊天动地的震撼!俄军投下了人类有史以来第一枚 FAB3000 重型航弹

笔墨V
2024-06-27 13:01:51
没有富士康,中部第二城郑州还有什么?

没有富士康,中部第二城郑州还有什么?

创作者朱海平
2024-06-25 17:22:52
2024-07-02 05:32:49
Java精选
Java精选
一场永远也演不完的戏
1551文章数 3855关注度
往期回顾 全部

头条要闻

欧洲杯-法国1-0比利时晋级8强 维尔通亨自摆乌龙

头条要闻

欧洲杯-法国1-0比利时晋级8强 维尔通亨自摆乌龙

体育要闻

他们距离创造历史,只差1分33秒

娱乐要闻

今年内娱最大的闹剧,该收场了

财经要闻

债牛疯狂不止,引央行“出手”!

科技要闻

天兵科技巩义现场工作人员:正寻找黑匣子

汽车要闻

奥迪Q6 e-tron Sportback官图曝光

态度原创

数码
时尚
房产
公开课
军事航空

数码要闻

七彩虹多款 Z890、B860、H810 及技嘉 X870 主板现身 EEC 认证

这双鞋太火了!怎么搭都好看|好物

房产要闻

官宣去库存!海南这一区域商办产品,已无限接近住宅!

公开课

连中三元是哪三元?

军事要闻

泽连斯基:俄乌谈判可采取“第三国调解”模式

无障碍浏览 进入关怀版