在 MySQL 查询中同时使用 DISTINCT 和 COUNT?


我们可以在单个 MySQL 查询中同时使用 DISTINCT 和 COUNT。首先,让我们创建一个表。CREATE 命令用于创建表。

mysql> create table DistCountDemo
   - > (
   - > id int,
   - > name varchar(100),
   - > age int
   - > );
Query OK, 0 rows affected (0.48 sec)

通过 INSERT 命令插入记录。

mysql> insert into DistCountDemo values(1,'John',23);
Query OK, 1 row affected (0.11 sec)

mysql> insert into DistCountDemo values(2,'Bob',24);
Query OK, 1 row affected (0.14 sec)

mysql> insert into DistCountDemo values(3,'John',23);
Query OK, 1 row affected (0.16 sec)

mysql> insert into DistCountDemo values(4,'Carol',23);
Query OK, 1 row affected (0.20 sec)

通过 SELECT 语句显示所有记录。

mysql> select *from DistCountDemo;

以下是输出。

+------+-------+------+
| id   | name  | age  |
+------+-------+------+
|    1 | John  |   23 |
|    2 | Bob   |   24 |
|    3 | John  |   23 |
|    4 | Carol |   23 |
+------+-------+------+
4 rows in set (0.00 sec)

应用 COUNT 和 DISTINCT 以找出年龄为 23 的学生的数量。

mysql> SELECT COUNT(DISTINCT name) from  DistCountDemo WHERE age=23;

以下是输出。

+----------------------+
| COUNT(DISTINCT name) |
+----------------------+
|                    2 |
+----------------------+
1 row in set (0.05 sec)

更新于: 30-Jul-2019

391 次浏览

开始您的 职业生涯

通过完成该课程获得认证

开始学习
广告