COUNT 统计查询结果的行数

COUNT() 函数统计数据表中包含的记录行的总数,或者根据查询结果返回列中包含的数据行数,使用方法有以下两种:

  • COUNT(*) 计算表中总的行数,无论某列有数值或者为空值。

  • COUNT(字段名) 计算指定列下总的行数,计算时将忽略空值的行。

示例用法

在演示 COUNT 函数用法之前,我们先 t_user 用户表,表数据如下:

mysql> select * from t_user;
+----+------+-----+------+----------+
| id | name | sex | age  | salary   |
+----+------+-----+------+----------+
|  1 | 张三 | 男  |   22 | 6782.50  |
|  2 | 李四 | 男  |   27 | 7523.00  |
|  3 | 王五 | 女  |   22 | 6760.30  |
|  4 | 赵六 | 男  |   24 | 6810.50  |
|  5 | 王二 | 男  |   27 | 10280.00 |
|  6 | 杜一 | 女  |   25 | 8700.00  |
|  7 | NULL | 女  | NULL | 9750.00  |
+----+------+-----+------+----------+
7 rows in set (0.06 sec)

(1)查询 t_user 表中总的行数,如下:

mysql> select count(name) from t_user;
+-------------+
| count(name) |
+-------------+
|           6 |
+-------------+
1 row in set (0.05 sec)

当然,也可以使用 count(*) 统计 t_user 表中总的行数,如下:

mysql> select count(*) from t_user;
+----------+
| count(*) |
+----------+
|        7 |
+----------+
1 row in set (0.04 sec)

注意:在计算总数的时候对待 NULL 值的方式是,指定列的值为空的行被 COUNT() 函数忽略,但若不指定列,而在 COUNT() 函数中使用星号“*”,则所有记录都不忽略。

关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号