1楼:sql的艺术
select
a.sno学号,a.sname姓名,a.sdept系名,c.cname课程名称,b.maxgrade成绩
from
studenta
innerjoin(selectcno,max(sno)sno,max(grade)maxgradefromscgroupbycno)bona.sno=b.sno
innerjoincourseconb.con=c.cno
2楼:匿名用户
selectstudent.sno,student.sname,student.sdept,
course.cname,t.maxgradefrom
student,course,
(selects.sno,c.sdept,s.cno,c.maxgrade
fromscs,studentst,
(selecta.sdept,b.cno,max(b.grade)asmaxgrade
fromstudenta,scbwherea.sno=b.sno
groupbya.sdept,b.cno)c
wheres.sno=st.snoandst.sdept=c.sdeptand
s.grade=c.maxgrade)twherestudent.sno=t.sno
andcourse.cno=t.cnoorderbycourse.cname,student.sdept;
上述语句已经测试通过。**思路是:
学生表与成绩表基于学号进行连接获取每个学号所在系名,然后用院系和课程号对成绩表分组汇总,求得每个院系、每个课程的最高得分(结果集c,含系名、课程号和最高分)。然后用结果集c再次与成绩表、学生表进行比对,筛选出获得每个系、每个课程的最高分的学号并包含课程号和系名(结果集t)。最后t通过连接获取学生表中的学生姓名、课程表中的课程名完成最后输出。
3楼:me孤魂
因为不知道3个表的具体结果只能推测3个表的关联情况学生表student 的学号sno 和成绩表sc 的学号sno关联课程表course的课程cno和成绩表sc 的课程cno关联首先获得sc表中每门课程的最高成绩,然后跟sc关联获得其他信息,在分别去学生表,课程表关联,获得具体的信息
语句如下
select a.sno,c.sname,c.
sdept,d.cno,b.grade from sc a,(select cno,max(grade) grade from sc group by cno) b,student c,coursed d
where a.cno=b.grade
and a.sno=c.sno
and a.cno=d.cno
sql sever 2008r2查询各系各科成绩最高分的学生的学号,姓名,系名,课程名称,成绩
4楼:sql的艺术
select
a.sno学号,a.sname姓名,a.sdept系名,c.cname课程名称,b.maxgrade成绩
from
studenta
innerjoin(selectcno,max(sno)sno,max(grade)maxgradefromscgroupbycno)bona.sno=b.sno
innerjoincourseconb.con=c.cno
5楼:匿名用户
selectstudent.sno,student.sname,student.sdept,
course.cname,t.maxgradefrom
student,course,
(selects.sno,c.sdept,s.cno,c.maxgrade
fromscs,studentst,
(selecta.sdept,b.cno,max(b.grade)asmaxgrade
fromstudenta,scbwherea.sno=b.sno
groupbya.sdept,b.cno)c
wheres.sno=st.snoandst.sdept=c.sdeptand
s.grade=c.maxgrade)twherestudent.sno=t.sno
andcourse.cno=t.cnoorderbycourse.cname,student.sdept;
上述语句已经测试通过。**思路是:
学生表与成绩表基于学号进行连接获取每个学号所在系名,然后用院系和课程号对成绩表分组汇总,求得每个院系、每个课程的最高得分(结果集c,含系名、课程号和最高分)。然后用结果集c再次与成绩表、学生表进行比对,筛选出获得每个系、每个课程的最高分的学号并包含课程号和系名(结果集t)。最后t通过连接获取学生表中的学生姓名、课程表中的课程名完成最后输出。
6楼:匿名用户
好的,这个涉及到分组排序子查询等
用sql命令创建一个名为“v单科最高分”的视图,用于查询每门课程的最高分的学生学号、姓名、课程号、成绩 5
7楼:匿名用户
首先要复找出最高课程的分数,制然后再根据分数,找出最高的学号。楼上的两位,语法错误。
create view v单科最高分 as
select a.学号, b.姓名, a.课程号, c.课程名, a.成绩
(select a.* from xs_kc a, (select 课程号, max(成绩) 成绩 from xs_kc group by 课程号) b
where a.课程号 = b.课程号 and a.成绩=b.成绩) a, xsqk b, kc c
where a.学号 = b.学号 and b.课程号 = c.课程号
8楼:匿名用户
create view 'v单科最高du
分'as
select b.学号
zhidao,b.姓名,a.课程号,a.成绩专from (select 学号,课程号,max(成绩) as 成绩,学分属 from xs_kc group by 课程号) a,
xsqk b
where a.学号=b.学号
9楼:匿名用户
create view v单科最高分
asbegin
select xs_kc.学号,xsqk.姓名,xs_kc.课程号,max(xs_kc.成绩
版权) as 成绩
from xs_kc on xs_kc.学号 = xsqk.学号group by xs_kc.课程号end
SQL查询没有选修1号课程的学生姓名
1楼 匿名用户 select sname from student where not exists select from sc where student sno sc sno and o 1 2楼 匿名用户 select 姓名 sname from student where not exis...
海南大学教务系统初始密码是什么,海南大学教务处学生成绩查询系统的初始用户名和密码是什么? 10
1楼 匿名用户 没有初始密码的,忘了密码要去教务处问一下 海南大学教务处学生成绩查询系统的初始用户名和密码是什么? 10 2楼 泰山体育场 学生用户的用户名是学号,密码是123 3楼 匿名用户 用户名就是你的学号 要你没改密码的话原始密码是123 海南大学教务管理系统登录用户名是什么 4楼 匿名用户...