数据库多表查询的问题
首先有3个表:
1、student表,字段sno,sname,sex,height
2、coures表,字段cno,cname,credit(学分?)
3、sc表,字段sno,cno,grade(得分?)
问题:
1、查询每个学生的平均成绩
2、给出所有超过5个学生选的课程
3、按总平均值降序给出所有课程均及格但不包括课程代号为C8的所有学生总平均值
谢谢
------解决方案--------------------1.
select a.sno,a.sname,avg(b.grade)
from student as a inner join sc as b on a.sno=b.sno
group by a.sno,a.sname
order a.sno,a.sname
2.
select a.cno,a.cname
from coures as a left join sc as b on a.cno=b.no
group by a.cno,a.cname
order by a.cno,a.cname
having count(*)> 5
------解决方案--------------------第3个问题描述的不清楚
除C8课程外所有课程均及格的所有学生的总平均值?这样的结果应该就一个啊,怎么会来按降序排?
是不是:除C8课程外所有课程均及格的所有学生的平均分,并按降序排?