MySQL查询选课人数大于等于 3 人的课程编号、课程名称、人数
时间: 2023-08-09 20:12:29 浏览: 170
课程mysql
假设我们有以下三张表:
学生表 (students):
| 学号 | 姓名 |
| ---- | -----|
| 1 | 张三 |
| 2 | 李四 |
| 3 | 王五 |
| 4 | 赵六 |
课程表 (courses):
| 课程编号 | 课程名称 |
| ---- | -----|
| 1001 | 数据库 |
| 1002 | 计算机网络 |
| 1003 | 操作系统 |
| 1004 | 编译原理 |
选课表 (course_selections):
| 学号 | 课程编号 |
| ---- | -----|
| 1 | 1001 |
| 1 | 1002 |
| 2 | 1001 |
| 3 | 1003 |
则查询选课人数大于等于 3 人的课程编号、课程名称、人数的SQL语句如下:
```
SELECT c.课程编号, c.课程名称, COUNT(*) AS 选课人数
FROM 选课表 s
JOIN 课程表 c ON s.课程编号 = c.课程编号
GROUP BY c.课程编号, c.课程名称
HAVING COUNT(*) >= 3;
```
该语句使用了 JOIN 语句将选课表和课程表连接起来,然后使用 GROUP BY 语句将结果按照课程编号和课程名称进行分组。然后使用 HAVING 子句过滤出选课人数大于等于 3 人的记录,最终查询结果包括课程编号、课程名称和选课人数三个字段。
阅读全文