当前位置: Oracle DBA培训网-优技培训 >> MySQL培训 > MySQL培训教程 >

MySQL培训课程:count函数怎么使用

MySQL培训课程:count函数怎么使用

MySQL培训课程:count函数怎么使用

·计算查询语句返回的记录行数

直接计算函数COUNT(*)的值,例如,计算pet表中猫的只数:

mysql>select count(*) from pet where species=’cat’;

+----------+

| count(*) |

+----------+

| 2 |

+----------+

·统计字段值的数目

例如,计算pet表中species列的数目:

mysql> select count(species) from pet;

+----------------+

| count(species) |

+----------------+

| 9 |

+----------------+

如果相同的种类出现了不止一次,该种类将会被计算多次。如果你想知道种类为某个特定值的宠物有多少个,你可以使用WHERE子句,如下例所示:

mysql> SELECT COUNT(species) FROM pet WHERE species='cat' ;

注意这条语句的结果:

+----------------+

| COUNT(species) |

+----------------+

| 2 |

+----------------+

这个例子返回种类为'cat'的作者的数目。如果这个名字在表pet中出现了两次,则次函数的返回值是2。 而且它和上面提到过的语句的结果是一致的:

select count(*) from pet where species=’cat’

实际上,这两条语句是等价的。

假如你想知道有多少不同种类的的宠物数目。你可以通过使用关键字DISTINCT来得到该数目。如下例所示:

mysql> SELECT COUNT(DISTINCT species) FROM pet;

+-------------------------+

| COUNT(DISTINCT species) |

+-------------------------+

| 5               |

+-------------------------+

如果种类'cat'出现了不止一次,它将只被计算一次。关键字DISTINCT 决定了只有互不相同的值才被计算。

通常,当你使用COUNT()时,字段中的空值将被忽略。

另外,COUNT()函数通常和GROUP BY子句配合使用,例如可以这样返回每种宠物的数目:

mysql> SELECT species,count(*) FROM pet GROUP BY species;

+---------+----------+

| species | count(*) |

+---------+----------+

| bird   | 2 |

| cat   | 2 |

| dog   | 3 |

| hamster | 1 |

| snake  | 1 |

+---------+----------+

技术沙龙MORE+

标签错误:<!-- #Label# labelId=20160707140604 moduleId=1 classId=12231768634 orderby=2 fields=url,title,u_info attribute= datatypeId=22192428132 recordCount=3 pageSize= <htmlTemplate><dt><img src="/images/index_26${index}.jpg" width="100" height="62" /><a href="$url" title="${title}">${title}</a><span>${api.left(u_info,60)}</span></dt></htmlTemplate> -->
我要参加技术沙龙