mysql中的COUNT()函数返回表中的行数。COUNT()函数允许您对表中符合特定条件的所有行进行计数。
COUNT()函数的语法如下:COUNT(expression)
COUNT函数有几种形式:COUNT(*),COUNT(1),COUNT(column), COUNT(DISTINCT column)和COUNT(expression)。
COUNT(*)函数
COUNT(*)函数返回由SELECT语句返回的结果集中的行数。COUNT(*)函数计算包含NULL和非NULL值的行,即:所有行。
如果使用COUNT(*)函数对表中的数字行进行计数,而不使用WHERE子句选择其他列,则其执行速度非常快。
这种优化仅适用于MyISAM表,因为MyISAM表的行数存储在information_schema数据库的tables表的table_rows列中; 因此,MySQL可以很快地检索它。
COUNT(1)函数:
count(1)这个用法和count(*)的结果是一样的。
COUNT(DISTINCT COLUMN):
MySQL COUNT(DISTINCT column)返回不包含NULL值的唯一行数。
COUNT(COLUMN):
MySQL COUNT(column)返回不包含NULL值的所有行数。
COUNT(expression):
COUNT(expression)返回不包含NULL值的行数,expression 是表达式。