mysql查询选修课程大于2
时间: 2023-06-17 14:04:18 浏览: 66
假设有一个名为`student`的表,其中有学生的学号`id`和选修的课程数`course_num`,你可以使用如下SQL语句查询选修课程大于2的学生:
```
SELECT id FROM student WHERE course_num > 2;
```
该语句会返回一个包含学号`id`的结果集,其中`course_num`大于2。你可以根据需要修改表名和字段名。
相关问题
mysql 查询选修了全部学分大于4的课程的学生的学号
可以使用如下 SQL 查询语句:
SELECT DISTINCT sc.Sno
FROM sc
WHERE sc.Credit > 4
GROUP BY sc.Sno
HAVING SUM(sc.Grade) >= 60
这个查询语句可以找出所有选修了全部学分大于4的课程的学生的学号。需要注意的是,这个查询语句假设每门课程的学分相等,且及格分数为60分,如果不符合实际情况,需要进行相应的修改。
用mysql查询选修课程3门以上且成绩在90分以上的学生的情况
可以使用如下的 SQL 查询语句:
```
SELECT s.student_id, s.student_name
FROM student s
JOIN score sc ON s.student_id = sc.student_id
WHERE sc.course_id IN (SELECT course_id FROM course WHERE course_type = '选修')
GROUP BY s.student_id, s.student_name
HAVING COUNT(DISTINCT sc.course_id) >= 3 AND AVG(sc.score) >= 90;
```
这条查询语句会先从 `course` 表中查询出所有课程类型为 "选修" 的课程 ID,然后通过 `JOIN` 操作将 `student` 表和 `score` 表连接起来。接着,我们使用 `GROUP BY` 子句对学生 ID 和姓名进行分组,并使用 `HAVING` 子句筛选出选修课程数量大于等于 3 门且平均成绩大于等于 90 分的学生。