假设有两个表,一个学生表,包含学生的姓名,学号,性别,年龄和所在系;另一个是选课表,包含学号,课程号和成绩。用数据查询求至少选修了3门课程学生的姓名
时间: 2024-01-04 11:04:16 浏览: 97
在A到G依次输入“学号、姓名……平均分”-Excel最常用知识
可以使用如下SQL语句来查询至少选修了3门课程的学生姓名:
```
SELECT 学生表.姓名
FROM 学生表 INNER JOIN 选课表 ON 学生表.学号 = 选课表.学号
GROUP BY 学生表.学号, 学生表.姓名
HAVING COUNT(选课表.课程号) >= 3;
```
解释一下:
1. 首先使用 INNER JOIN 将学生表和选课表连接起来,连接条件是学号相等。
2. 然后用 GROUP BY 将学生按照学号和姓名分组。
3. 使用 COUNT(选课表.课程号) 统计每个学生选修的课程数。
4. 最后使用 HAVING 子句筛选出选修课程数至少为3门的学生,返回他们的姓名。
阅读全文