MySQL中count()函数

语法:SELECT COUNT(*) | COUNT(列名)  FROM 表名 [WHERE 条件语句]

mysql> select * from student_info;
+------+---------+
| age  | name    |
+------+---------+
|   12 | Lili    |
|   27 | Jack    |
|   25 | Rose    |
|   25 | Ann     |
|   26 | Mark    |
|   68 | Bill    |
|   16 | James   |
|   20 | Fred    |
|    8 | Gary    |
|   22 | Martin  |
|   35 | Charles |
|   31 | Joseph  |
|   49 | Henry   |
|   57 | Mike    |
| NULL | Bob     |
+------+---------+
15 rows in set (0.00 sec)

mysql> 

(1)COUNT(*)

统计表中多少条记录

mysql> SELECT COUNT(*) FROM student_info;
+----------+
| COUNT(*) |
+----------+
|       15 |
+----------+
1 row in set (0.00 sec)

mysql>

(2)COUNT(列名)

统计指定列中有多少条记录,不含值为NULL的

mysql> SELECT COUNT(age) FROM student_info;
+------------+
| COUNT(age) |
+------------+
|         14 |
+------------+
1 row in set (0.00 sec)

mysql>

(3)COUNT(DISTINCT 列名)

统计列中不重复的记录有多少条

mysql> SELECT COUNT(DISTINCT age) FROM student_info;
+---------------------+
| COUNT(DISTINCT age) |
+---------------------+
|                  13 |
+---------------------+
1 row in set (0.00 sec)

mysql>

(4)与WHERE连用

# 查找age在(20, 30)之间的记录有多少条
mysql> SELECT COUNT(*) FROM student_info where age >=20 && age <=30;
+----------+
| COUNT(*) |
+----------+
|        6 |
+----------+
1 row in set (0.01 sec)

mysql>


 


 

posted @ 2013-04-29 10:49  robotke1  阅读(333)  评论(0编辑  收藏  举报