MySQL的COUNT(~)聚合方法统计返回结果的数量。
参数
1. expr | expression
用于计算检索行数的表达式。
返回值
expr 中不包含 NULL 值的行数。
警告
COUNT(*) 例外,它对检索到的行进行计数,包括包含 NULL 值的行。
例子
请考虑下表有关学生的课外活动:
| 
 student_id  | 
 俱乐部  | 
 date_entered  | 
|---|---|---|
| 
 1  | 
 Football  | 
 2016-02-13  | 
| 
 2  | 
 Boxing  | 
 2016-05-25  | 
| 
 3  | 
 Apple  | 
 2018-08-17  | 
| 
 4  | 
 Fishing  | 
 2017-01-01  | 
| 
 5  | 
 NULL  | 
 NULL  | 
可以使用此处的代码创建上述示例表。
基本用法
计算 extracurricular 表中的俱乐部数量:
SELECT COUNT(club) 
FROM extracurricular;
+-------------+
| COUNT(club) |
+-------------+
|           4 |
+-------------+
请注意,student_id=5 的 NULL 值被忽略,这就是为什么我们的返回值为 4 。
数数(*)
返回 extracurricular 表中的记录数:
SELECT COUNT(*) 
FROM extracurricular;
+----------+
| COUNT(*) |
+----------+
|        5 |
+----------+
请注意,COUNT(*) 返回检索到的行数,无论它们是否包含NULL 值。
不同的记录
要计算 extracurricular 表中不同俱乐部的数量:
SELECT COUNT(DISTINCT club) 
FROM extracurricular;
+----------------------+
| COUNT(DISTINCT club) |
+----------------------+
|                    4 |
+----------------------+
缺失值
要计算缺失值,请使用 IS NULL 运算符,如下所示:
SELECT COUNT(*) 
FROM extracurricular 
WHERE club IS NULL;
+----------+
| COUNT(*) |
+----------+
|        1 |
+----------+
我们可以看到表extracurricular 中有一行具有NULL 俱乐部值。
请注意,以下 SQL 不起作用:
SELECT COUNT(*) 
FROM extracurricular 
WHERE club = NULL;
相关用法
- MySQL COUNT()用法及代码示例
 - MySQL CONCAT()用法及代码示例
 - MySQL CONCAT方法用法及代码示例
 - MySQL CONV( )用法及代码示例
 - MySQL CONVERT_TZ方法用法及代码示例
 - MySQL CONVERT_TZ()用法及代码示例
 - MySQL CONCAT_WS方法用法及代码示例
 - MySQL CONVERT( )用法及代码示例
 - MySQL COT()用法及代码示例
 - MySQL COMPRESS( )用法及代码示例
 - MySQL CONNECTION_ID( )用法及代码示例
 - MySQL COT方法用法及代码示例
 - MySQL COALESCE()用法及代码示例
 - MySQL COS()用法及代码示例
 - MySQL CONCAT_WS()用法及代码示例
 - MySQL CONV方法用法及代码示例
 - MySQL COS方法用法及代码示例
 - MySQL CURTIME()用法及代码示例
 - MySQL Convert()用法及代码示例
 - MySQL CEIL方法用法及代码示例
 - MySQL CHARACTER_LENGTH()用法及代码示例
 - MySQL CEILING()用法及代码示例
 - MySQL CURRENT_TIME()用法及代码示例
 - MySQL CHAR_LENGTH()用法及代码示例
 - MySQL CHAR and VARCHAR用法及代码示例
 
注:本文由纯净天空筛选整理自Arthur Yanagisawa大神的英文原创作品 MySQL | COUNT method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
