楼主先前天真的以为count(*)和count(列名)的结果是一样的,其实不然。count(*)统计的是结果集的总行数,而count(列名)统计的是结果集中该列不为null值的记录的总行数。count(*)和count(列名)当统计的列的列值不为null值时结果一样,反之,不相等。

     另count(0)等也可以统计结果集的行数,其结果与count(*)一样。

     统计范围的比较,count(0)和count(*)都是包括对null的统计,而count(列名)则是不包括对null值的统计。  

     执行效率的比较,表没有主键,count(0)比count(*)快;count(主键)比count(0)和count(*)都快;表只有一个字段时,count(0)、count(列名)和count(*)的速度都一样。

 posted on 2014-04-29 10:55  会飞的金鱼  阅读(590)  评论(0)    收藏  举报