level 2
学生成绩表: Result 字段名: 班级 学号 课程 分数
问题一:用sql语句获得每个班级的每个课程的平均分数?
问题二:用sql语句获得课程名为数学的每个班级的及格人数,并根据上述获得的结果从Result表中取出课程名为数学,班级及格人数大于30的这些班级的所有记录?
问题三:用sql语句获得每个班级每门课程的及格率?
2022年03月22日 10点03分
1
level 5
select 班级,课程,avg(分数)
from 学生成绩表
group 班级,课程
2022年03月26日 11点03分
4
level 5
select *
from 学生成绩
where 班级 in(select 班级
from(select 班级,count(1)cn
from 学生成绩
where 课程='数学'and 分数>=60
group by 班级)A
where A.CN>=30);
2022年03月26日 11点03分
5
level 5
select 班级,课程,
sum(case when 分数>=60 then 1 else 0 end)
/sum(case when 分数>=0 then 1 else 0 end) as 及格率
from 学生成绩表
group by 班级,课程
2022年03月26日 11点03分
7