count()
函数计算行数,通常用作count(*)
。如果我有一个包含phoneNo和firstName的表,count(phoneNumber)
将返回与count(*)
相同的数字。如果未填充,则每行中始终存在所有列。
答案 0 :(得分:20)
有一个微妙的区别。
如果指定字段,count(fieldname)将计算该字段具有非null 值的记录。 count(*)将为您提供总行数。
答案 1 :(得分:7)
另一方面,您可以计算不同的值。 count(distinct firstName)可以提供不同的结果作为count(distinct phoneNumber),两者可能与count()不同。
答案 2 :(得分:4)
请参阅MSDN
Count(phoneNo)将返回phoneNo不为空的记录数。无论如何,Count(*)都会返回一个或多个行。
答案 3 :(得分:2)
COUNT(*)
将计算每一行。 COUNT(yourColumn)
不会包含yourColumn
为NULL
的行。
例如,如果您的表格中有20行,其中5行中的phoneNumber
列为NULL
,那么COUNT(*)
将返回20,而COUNT(phoneNumber)
则会返回15。