目录
题目
查询至少有5个学生的所有班级
准备数据
## 创建库
create database db;
use db;
## 创建表
Create table If Not Exists Courses (student varchar(255), class varchar(255))
## 向表中插入数据
Truncate table Courses
insert into Courses (student, class) values ('A', 'Math')
insert into Courses (student, class) values ('B', 'English')
insert into Courses (student, class) values ('C', 'Math')
insert into Courses (student, class) values ('D', 'Biology')
insert into Courses (student, class) values ('E', 'Math')
insert into Courses (student, class) values ('F', 'Computer')
insert into Courses (student, class) values ('G', 'Math')
insert into Courses (student, class) values ('H', 'Math')
insert into Courses (student, class) values ('I', 'Math')
分析数据
-数学课有6个学生,所以我们包括它。
-英语课有1名学生,所以我们不包括它。
-生物课有1名学生,所以我们不包括它。
-计算机课有1个学生,所以我们不包括它。
select class from courses
group by class
having count(distinct student) >= 5;
总结
聚合函数当条件时,要结合group by,并且要放在having后