扫码关注官方订阅号
MySQL统计数据count(*) 和 count(1) 什么区别??
人生最曼妙的风景,竟是内心的淡定与从容!
不好意思,第一次的回答确实错了,我试验一下, 1.count(1)和count(*)是一样的,都返回包括null在内的值,1不是指的第一列!当然count(2)和count(1)是一样的。 2.count(column)和count(*)是不一样的,column是字段名,通过count(column)取出来的值是不包括null的。
count(1)
count(*)
null
1
count(2)
count(column)
column
呜呜,题主真是不好意思,差点误导你。
我也一直想着count(*)和count(1)有什么区别,看来完全一样!了解了
我记得count(1)只扫描主键Index就可以得到数据,count(*)是扫描表的,效率上有所不同,其他就如上面的所说,与count(column)关于Null的判断
count(*)和count(1)一样,楼主如果要统计,建议用count(主键)的方式!
count(主键)
count(*):只要一行记录不全是null,都是可以统计的 count(1):都是可以统计的
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
不好意思,第一次的回答确实错了,我试验一下,
1.
count(1)和count(*)是一样的,都返回包括null在内的值,1不是指的第一列!当然count(2)和count(1)是一样的。2.
count(column)和count(*)是不一样的,column是字段名,通过count(column)取出来的值是不包括null的。呜呜,题主真是不好意思,差点误导你。
我也一直想着count(*)和count(1)有什么区别,看来完全一样!了解了
我记得count(1)只扫描主键Index就可以得到数据,count(*)是扫描表的,效率上有所不同,其他就如上面的所说,与count(column)关于Null的判断
count(*)和count(1)一样,楼主如果要统计,建议用count(主键)的方式!count(*):只要一行记录不全是null,都是可以统计的
count(1):都是可以统计的