count(*)、count(1)和count(列名)区别
创作时间:
作者:
@小白创作中心
count(*)、count(1)和count(列名)区别
引用
CSDN
1.
https://blog.csdn.net/weixin_42381196/article/details/122259002
在SQL查询中,count(*)、count(1)和count(列名)是常用的统计函数,但它们之间存在一些重要的区别。本文将从执行效果和执行效率两个维度,详细对比分析这三种统计函数的差异,并通过实例帮助读者更好地理解它们的使用场景。
一、三者对比
(1)执行效果上:
- count(*)包括了所有的列,相当于行数,在统计结果的时候,不会忽略列值为NULL
- count(1)包括了忽略所有列,用1代表代码行,在统计结果的时候,不会忽略列值为NULL
- count(列名)只包括列名那一列,在统计结果的时候,会忽略列值为空(这里的空不是只空字符串或者0,而是表示null)的计数,即某个字段值为NULL时,不统计。
(2)执行效率上:
- 列名为主键, count(列名) 会比 count(1)快
- 列名不为主键, count(1) 会比 count(列名)快
- 如果表多个列并且没有主键,则 count(1) 的执行效率优于 count(*)
- 如果有主键,则 select count(主键) 的执行效率是最优的
- 如果表只有一个字段,则 select count(*)最优。
二、实例分析
热门推荐
大酒店的秘制红烧肉做法:不焯水不过油,全家爱吃
美国家庭的离婚率真的有50%吗?对比中国与美国的结婚率和离婚率
煤气灶点火失败怎么办?多种原因及解决方案全解析
买房时税费该谁付?法律真相是什么?
米兰新规:允许将宠物骨灰与主人一同安葬
如何基于投资管理系统进行资产负债管理和财务分析?
贾母为何舍弃林黛玉:深扒红楼联姻背后的三大残酷真相
生命科学好就业吗?张雪峰最看好,前景好月薪高!
立足核心素养培育,探讨跨学科学习,这个研讨举行
提升情侣/夫妻舒适度的10个实用方法
庐山烟雨浙江潮 未到千般恨不消的意思全诗
如何证明婚后共同财产:法律实务中的认定与举证指南
硫酸铵:特性、用途与技术规格详解
探访玉环旅游胜地:欣赏自然风光与历史文化遗迹的十个必游景点
老小区商品房拆除赔偿标准及商品房常见问题解答
马桶被卫生纸堵住?8个实用解决方案+预防措施全攻略
盖斯特研报:车用动力电池发展现状与未来趋势预判(上篇)
怀孕时怎样减轻小腿疼痛的不适?
电动行李箱为何不让带上公交车?一文了解携带含锂电池物品规定
最近,济南这些打卡地,美爆了
了解股市的起源和发展
股市历史上的重大事件回顾
使用短视频进行电子商务的 9 种有效方法
柳根鱼学名叫什么?
大模型开发 - 一文搞懂人工智能数学基础(下):概率论
民法典解读:小区物业停水停电、公摊费用与征信问题
漳州特有的饮品——片仔癀甘蔗汁
旅鸽:曾翱翔天际的北美候鸟
2G退网致电动车"失联",小牛电动被指侵犯消费者知情权
全国生物医学工程学科评估结果排名