count(1)和count(*)的区别

count(1)和count(*)的区别

count(1)和count(*)区别在于执行效率吗? 我觉得他们功能的相同的

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好。count(*) 和count(1) 都是统计行数,他们在使用时效果几乎相同,只是效率稍有不同。

count(*)包括了所有的列,相当于行数,在统计结果的时候,不会忽略列值为NULL。
count(1)是结果集中多了一个常数值1的列,然后统计这个列有多少行。

有主键或联合主键的情况下,count(*)略比count(1)快一些。  没有主键的情况下count(1)比count(*)快一些。  如果表只有一个字段,则count(*)是最快的。

在这里,同学使用count(*)也是可以的。

如果解答了同学的疑问,望采纳~

祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师