4、检索选修了所有 2 学分课程的男学生姓名
时间: 2023-11-24 21:50:25 浏览: 266
查询至少学习了1号课程和2号课程的学生的学号,姓名的八种写法
4星 · 用户满意度95%
以下是SQL语句实现:
```
SELECT DISTINCT Sname
FROM SC, Student
WHERE SC.SNO = Student.SNO AND Student.Ssex = '男' AND SC.CNO IN (
SELECT CNO
FROM Course
WHERE credit = 2
)
GROUP BY Sname
HAVING SUM(Credit) >= 2;
```
以上SQL语句中,首先使用内连接将SC表和Student表连接起来,然后筛选出性别为男的学生。接着使用子查询找出所有学分为2的课程,再使用IN关键字将其与SC表连接起来,找出所有选修了2学分课程的学生。最后使用GROUP BY和HAVING关键字将学生按姓名分组,并计算他们所选课程的总学分,筛选出总学分大于等于2的学生。最终输出这些学生的姓名。
阅读全文