count(*)与count(字段)的区别
1、count(*)查询结果中包含 null值的空行,
count(字段) 查询结果为非空行。
注意:1、该特性是 COUNT 函数所特有的,其他函数并不能将星号作为参数(如果使用星号会出错)。
2、所有的聚合函数,如果以列名为参数,那么在计算之前就已经把NULL 排除在外了。因此,无论有多少个 NULL 都会被无视。这与“等价为 0”并不相同。
COUNT函数的结果根据参数的不同而不同。COUNT(*)会得到包含NULL的数据行数,而COUNT(<列名>)会得到NULL之外的数据行数。
![](https://img2020.cnblogs.com/blog/2231009/202201/2231009-20220111075920408-1360415510.png)