计算 MySQL 中不同值的数量?
mysqlmysqli database
首先我们创建一个表 −
mysql> create table DemoTable -> ( -> Name varchar(100), -> Code varchar(100) -> ); Query OK, 0 rows affected (0.54 sec)
使用 insert 命令在表中插入一些记录 −
mysql> insert into DemoTable values('Chris','0001'); Query OK, 1 row affected (0.17 sec) mysql> insert into DemoTable values('Robert','0002'); Query OK, 1 row affected (0.20 sec) mysql> insert into DemoTable values('Robert','0003'); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values('Chris','0001'); Query OK, 1 row affected (0.12 sec)
使用 select 语句显示表中的所有记录 −
mysql> select *from DemoTable;
输出
+--------+------+ | Name | Code | +--------+------+ | Chris | 0001 | | Robert | 0002 | | Robert | 0003 | | Chris | 0001 | +--------+------+ 4 rows in set (0.00 sec)
以下是计算不同值数量的查询 −
mysql> select Name,count(distinct Code) from DemoTable group by Name;
输出
+--------+----------------------+ | Name | count(distinct Code) | +--------+----------------------+ | Chris | 1 | | Robert | 2 | +--------+----------------------+ 2 rows in set (0.06 sec)