Mysql count()函数
2016-03-11 by dongnan
举个栗子
查询 zabbix 数据库 history 表有多少条数据。
mysql> select count(*) from history;
+----------+
| count(*) |
+----------+
| 15656160 |
+----------+
1 row in set (3.90 sec)
count(*) 它返回检索行的数目,不论其是否包含 NULL值。
count(1) 两条语句等效.
mysql> select count(1) from history;
+----------+
| count(1) |
+----------+
| 15656160 |
+----------+
1 row in set (3.90 sec)
区别
- count(*)包括了所有的列,相当于行数,在统计结果的时候不会忽略列值为- NULL。
- count(1)包括了忽略所有列,用1代表代码行,在统计结果的时候不会忽略列值为- NULL。
- count(列名)只包括列名那一列,在统计结果的时候,会忽略列值为空(这里的空是- NULL)的计数,即某个字段值为- NULL时不统计。