如何在 MySQL 中返回非重复值及其计数?
若要仅返回非重复值,请使用 GROUP BY 子句。
我们首先创建一个表 −
mysql> create table DemoTable754 (ProductPrice int); Query OK, 0 rows affected (0.48 sec)
使用插入命令在表中插入一些记录 −
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)
广告
数据结构
网络
关系型数据库管理系统(RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP