SQL 中 COUNT 函数用于统计特定条件的行的数量。基本用法为 COUNT(column_name),省略 column_name 统计所有行,指定 column_name 统计非空行,WHERE 子句可用于统计满足条件的行。DISTINCT 可用于去重,IS NULL 可用于统计 NULL 值行。

SQL 中 COUNT 的用法
COUNT 函数用于计算表中满足特定条件的行的数量。其基本语法为:
COUNT(column_name)
其中,column_name 指定要统计的行。
用法详解
-
统计所有行:如果省略
column_name,则 COUNT 函数将统计表中的所有行。
SELECT COUNT(*) FROM table_name;
-
统计特定列的行:指定
column_name以统计该列中包含非空值的行的数量。
SELECT COUNT(column_name) FROM table_name;
- 统计满足条件的行:结合 WHERE 子句,可以统计满足特定条件的行。
SELECT COUNT(*) FROM table_name WHERE column_name = 'value';
-
统计去重行:使用
DISTINCT关键字可以统计去重行的数量。例如,统计不同作者的文章数量:
SELECT COUNT(DISTINCT author) FROM articles;
- 统计 NULL 值的行:COUNT 函数不统计 NULL 值。如果需要统计 NULL 值的行,可以使用 COUNT(*) 配合 IS NULL 运算符。
SELECT COUNT(*) FROM table_name WHERE column_name IS NULL;
示例
- 统计表中所有行:
SELECT COUNT(*) FROM employees; -- 输出:100
- 统计特定列中非空值的行:
SELECT COUNT(salary) FROM employees; -- 输出:95
- 统计满足条件的行:
SELECT COUNT(*) FROM employees WHERE department = 'Sales'; -- 输出:25
- 统计去重行:
SELECT COUNT(DISTINCT name) FROM customers; -- 输出:500
- 统计 NULL 值的行:
SELECT COUNT(*) FROM employees WHERE birthdate IS NULL; -- 输出:5










