COUNT(1)和COUNT(*)区别

项目经常用到count(1),但是和count(*)什么区别?

从下面实验结果来看,Count (*)和Count(1)查询结果是一样的,都包括对NULL的统计,而count(列名) 是不包括NULL的统计。

图1:

图2:

 

PS:

如果表没有主键,count(1)比count(*)快.

如果有主键的话,主键作为count的条件时候count(主键)最快.

如果表只有一个字段的话那count(*)就是最快的.

如果使用count(*)多的话,建议使用指定列建立索引。

 

posted @ 2016-07-15 17:16  云中的angel王  阅读(3175)  评论(0编辑  收藏  举报