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

执行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)快
  • 列名不为主键,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 counttest
group by name;

结果如下:

blog.csdn.net/iFuMI/article/details/77920767

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

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.

相关推荐
热点推荐
《再见爱人4》舆论失控!麦琳再被曝猛料papi酱被冲,节目组出手

《再见爱人4》舆论失控!麦琳再被曝猛料papi酱被冲,节目组出手

叶二娱评
2024-11-26 19:51:21
“中美”关系再起波澜!11月27日,A股市场还会继续下跌?

“中美”关系再起波澜!11月27日,A股市场还会继续下跌?

风口招财猪
2024-11-27 01:05:26
德国政坛地震,70岁默克尔重出江湖,朔尔茨或将离职,欧洲全被骗

德国政坛地震,70岁默克尔重出江湖,朔尔茨或将离职,欧洲全被骗

时时有聊
2024-11-26 14:59:46
做空中国,中美金融战升级!94个部门已联手,拜登作出最后一击

做空中国,中美金融战升级!94个部门已联手,拜登作出最后一击

兵哥闲聊
2024-11-26 15:16:33
马斯克:一面是天才一面是疯子,从小混乱的家庭关系让他无法正常

马斯克:一面是天才一面是疯子,从小混乱的家庭关系让他无法正常

照见古今
2024-01-06 18:43:16
人民币汇率“贬值”!今日凌晨的四大消息持续发酵(11.27)!

人民币汇率“贬值”!今日凌晨的四大消息持续发酵(11.27)!

风口招财猪
2024-11-27 01:35:03
美国发明黑暗种植!植物不再光合作用,农业或巨变释放一半国土!

美国发明黑暗种植!植物不再光合作用,农业或巨变释放一半国土!

徐德文科学频道
2024-11-25 23:40:50
中方高规格接待,李显龙卸任后首次访华,暗示中国经济发展将放缓

中方高规格接待,李显龙卸任后首次访华,暗示中国经济发展将放缓

阿纂看事
2024-11-26 14:59:20
不敌海港!蔚山主帅:向球迷致歉,不解在亚冠和K联赛表现差异

不敌海港!蔚山主帅:向球迷致歉,不解在亚冠和K联赛表现差异

直播吧
2024-11-26 22:32:15
TVB资深演员去餐厅打工,下单、送餐之外,还要洗碗、倒垃圾

TVB资深演员去餐厅打工,下单、送餐之外,还要洗碗、倒垃圾

红星新闻
2024-11-26 16:53:11
匈波两国领导人警告俄乌冲突升级风险

匈波两国领导人警告俄乌冲突升级风险

国际在线
2024-11-24 11:53:20
中俄的技术交换开始,俄罗斯用压箱底的王牌,换回了最急需的东西

中俄的技术交换开始,俄罗斯用压箱底的王牌,换回了最急需的东西

阿握聊事
2024-11-26 09:32:17
若是想安全过冬,65岁以上老人一定要警惕:1不洗、2不睡、3不做

若是想安全过冬,65岁以上老人一定要警惕:1不洗、2不睡、3不做

今日养生之道
2024-11-26 12:10:52
证监会“难辞其咎”!11月27日,A股市场还会继续下跌?

证监会“难辞其咎”!11月27日,A股市场还会继续下跌?

风口招财猪
2024-11-27 01:06:33
韩军方:朝军切断韩朝输电塔电线

韩军方:朝军切断韩朝输电塔电线

上观新闻
2024-11-26 13:35:08
华为折叠屏旗舰Mate X6发布!余承东:强的飞起!

华为折叠屏旗舰Mate X6发布!余承东:强的飞起!

芯智讯
2024-11-27 01:26:49
中国真禁!美国人懵了:只能禁俄罗斯不能禁美国,中国:必须一视同仁

中国真禁!美国人懵了:只能禁俄罗斯不能禁美国,中国:必须一视同仁

星辰大海路上的种花家
2024-11-26 14:17:13
这样的女孩子倒给我100万,我都不要。这种人打扮的再靓丽又如何

这样的女孩子倒给我100万,我都不要。这种人打扮的再靓丽又如何

人情皆文史
2024-10-27 00:04:26
感觉中国神话很多都符合现实逻辑!网友:闭环了!

感觉中国神话很多都符合现实逻辑!网友:闭环了!

滑稽斑马呀
2024-11-26 00:38:13
大胜!亚历山大37+11,哈腾19+10+4,火箭很明白,德帅亏欠你太多

大胜!亚历山大37+11,哈腾19+10+4,火箭很明白,德帅亏欠你太多

巴叔GO聊体育
2024-11-26 16:59:46
2024-11-27 04:11:00
互联网干货博主
互联网干货博主
我是专注分享互联网干货的博主
278文章数 1339关注度
往期回顾 全部

科技要闻

"这是国产化最高,也是史上最强的Mate"

头条要闻

墨西哥总统称墨不是中国产品转口美国的途径 中方回应

头条要闻

墨西哥总统称墨不是中国产品转口美国的途径 中方回应

体育要闻

格列兹曼完成欧冠100次出场,法国球员中第四人

娱乐要闻

权威奖项沦为资本工具?谁来管一管

财经要闻

洪灏刘煜辉对谈实录 涉及A股、债务等!

汽车要闻

解决油车无法处理的难题 仰望U7数字底盘这么强

态度原创

艺术
家居
游戏
房产
亲子

艺术要闻

故宫珍藏的墨迹《十七帖》,比拓本更精良,这才是地道的魏晋写法

家居要闻

色彩搭配 活跃空间气氛

IGN评选PS史上最佳游戏TOP100位:80-61名

房产要闻

大动作!新世界·天馥全线上新,锚定广州置业安全网第一标准!

亲子要闻

双胞胎宝宝一个挨了打,三分钟后就睡着了,另一个:你也想试试?

无障碍浏览 进入关怀版