30.查询选修c2和c3课程的学生学号 31.查询选修了课程’c1'并且选修课程在三门以上的同学学号 32.检索至少选修两门课程的学生姓名。(采用自身连接查询)
时间: 2023-11-24 11:47:50 浏览: 362
30. 查询选修c2和c3课程的学生学号可以使用以下SQL语句:
SELECT DISTINCT student_id FROM course_selection WHERE course_id IN ('c2', 'c3');
31. 查询选修了课程’c1'并且选修课程在三门以上的同学学号可以使用以下SQL语句:
SELECT student_id FROM course_selection WHERE course_id = 'c1' GROUP BY student_id HAVING COUNT(DISTINCT course_id) >= 3;
32. 检索至少选修两门课程的学生姓名(采用自身连接查询)可以使用以下SQL语句:
SELECT DISTINCT a.student_name FROM course_selection a, course_selection b WHERE a.student_id = b.student_id AND a.course_id <> b.course_id;
相关问题
查询选修了三门以上课程的学生学号
好的,你可以使用以下 SQL 语句来查询选修了三门以上课程的学生学号:
```
SELECT s.student_id
FROM student s
JOIN course_selection cs ON s.student_id = cs.student_id
GROUP BY s.student_id
HAVING COUNT(cs.course_id) >= 3;
```
这个查询语句会从学生表(student)和选课表(course_selection)中获取学生学号和课程编号,然后通过学生学号进行分组,最后筛选出选修了三门以上课程的学生学号。
查询选修了三门以上课程的学生的学号、姓名及课程门数。
可以通过以下SQL语句查询选修了三门以上课程的学生的学号、姓名及课程门数:
```
SELECT s.学号, s.姓名, COUNT(*) AS 课程门数
FROM 学生 s, 选课记录 x
WHERE s.学号 = x.学号
GROUP BY s.学号, s.姓名
HAVING COUNT(*) >= 3
```
阅读全文