count()一般不统计null值
count(1) 和 count() 都会返回表中的行数,不考虑表中的列是否包含 NULL 值。它们的区别在于,count(1) 会对每一行都计算,而 count() 则会直接返回表中的行数,不需要对每一行进行计算。因此,count(*) 的执行速度通常会比 count(1) 快一些。
count(列名) 则是计算指定列中非 NULL 值的行数。如果指定的列包含 NULL 值,那么这些 NULL 值是不会被计算在内的。
因此,如果只是为了计算行数,建议使用 count(*)。如果需要计算某一列中非 NULL 值的行数,则可以使用 count(列名)。