注册 登录
编程论坛 SQL Server论坛

一道SQL子语言查询命令的题目 求答案

小易 发布于 2007-05-08 21:59, 723 次点击

给了三个表 学生表stud(s#,sname,sex,class), 成绩表grades(s#,c#,grade), 课程表course(c#,cname,credit)

其中 s#表示学号 , c# 表示课程号 ,sname表示姓名 , grade表示成绩, cname表示课程名 , credit表示绩点

求:统计各个学生的平均绩点,其计算方法是:∑(每门课的学分(credit)×每门课的绩点数)¸总学分;

5 回复
#2
cyyu_ryh2007-05-10 12:30

可以用多表查询,再左连接

#3
小易2007-05-10 12:50
         帮忙写一下  楼上的  多谢了
#4
冰封情愁2007-05-13 10:40

∑(每门课的学分(credit)×每门课的绩点数)¸
其中的的'学分'表中都没有这个字段,也没说明怎么得到.叫人怎么写啊....

#5
solo2142007-05-13 22:39

∑(每门课的学分(credit)×每门课的绩点数)¸总学分
啥叫绩点?
你别用那么强的专业术语
整点通俗易懂的 要不看不懂 怎么帮你写呀

#6
solo2142007-05-14 13:10
select sname,sum(grade*credit)/sum(grade) from stud,grades,course
where stud.s# = grades.s# and grades.c# = course.c# and sname = '学生姓名1'
union
select sname,sum(grade*credit)/sum(grade) from stud,grades,course
where stud.s# = grades.s# and grades.c# = course.c# and sname = '学生姓名2'
......
1