如何在MySQL中返回不同的值及其计数?
使用GROUP BY子句只返回不同的值。
让我们首先创建一个表 –
mysql> create table DemoTable754 (ProductPrice int);
Query OK, 0 rows affected (0.48 sec)
使用insert命令将一些记录插入表中 –
mysql> insert into DemoTable754 values(200);
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable754 values(500);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable754 values(200);
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable754 values(500);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable754 values(800);
Query OK, 1 row affected (0.24 sec)
mysql> insert into DemoTable754 values(900);
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable754 values(200);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable754 values(200);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable754 values(900);
Query OK, 1 row affected (0.11 sec)
使用select语句显示表中的所有记录-
mysql> select *from DemoTable754;
这将产生以下输出 –
+--------------+
| ProductPrice |
+--------------+
| 200 |
| 500 |
| 200 |
| 500 |
| 800 |
| 900 |
| 200 |
| 200 |
| 900 |
+--------------+
9 rows in set (0.00 sec)
以下是返回不同值及其计数的查询 –
mysql> select ProductPrice,count(ProductPrice) from DemoTable754 group by ProductPrice;
这将产生以下输出 –
+--------------+---------------------+
| ProductPrice | count(ProductPrice) |
+--------------+---------------------+
| 200 | 4 |
| 500 | 2 |
| 800 | 1 |
| 900 | 2 |
+--------------+---------------------+
4 rows in set (0.00 sec)
阅读更多:MySQL 教程
极客教程