查询每门课成绩最高分的同学的sql语句,输出课程名,姓名,学号,分数。表的结构如下。写出完整的sql语句

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查询每门课成绩最高分的同学的sql语句,输出课程名,姓名,学号,分数。表的结构如下。写出完整的sql语句相关的知识,希望对你有一定的参考价值。

select cname,sname,sc.sno,grade
from student,SC,course
where student.sno =SC.sno and SC.cno =course.cno and grade=(select MAX(grade) from SC where SC.cno =course.cno )
参考技术A 首先三表连接,然后select max(分数),姓名,学号, 课程 from 连接表 group by 姓名,学号, 课程
即可。
参考技术B SELECT cname,sname,student.sno,grade
FROM student join sc on student.sno=sc.sno
join course on course.cno=sc.cno
where grade=(select max(grade)
from sc
where cno=course.cno )
参考技术C select cname,sname,student.sno,sc1.grade

from student join SC as sc1 on student.sno=sc1.sno
join course on sc1.cno=course.cno
where not exists(
select * from SC as sc2
where sc1.cno=sc2.cno and sc1.grade<sc2.grade)and grade is not null
order by sc1.cno

数据库SQL语句练习题10--18

10.查询Score表中的最高分的学生学号和课程号。(子查询或者排序)

select t.sno,t.cno from SCORE t where degree = (select max(degree) from SCORE t)

11、 查询每门课的平均成绩。

12、查询Score表中至少有5名学生选修的并以3开头的课程的平均分数。

select avg(degree) from SCORE t where( cno in (select cno from SCORE t group by cno having count(1)>= 5 )) and cno like \'3%\';

13、查询分数大于70,小于90的Sno列。

14、查询所有学生的Sname、Cno和Degree列。

15、查询所有学生的Sno、Cname和Degree列。

select t.Sno,c.Cname,t.degree from score t join course c on c.Cno = t.Cno; 

16、查询所有学生的Sname、Cname和Degree列。

select t.sname,c.cname,s.degree from STUDENT t,course c,score s where t.sno = s.sno and s.cno = c.cno

17、?查询“95033”班学生的平均分。

select avg(degree) from SCORE t  where sno in (select t.sno from STUDENT t where class = \'95033\')

18、 假设使用如下命令建立了一个grade表:
create table grade(low number(3),upp number (3),rank char(1))
insert into grade values(90,100,’A’)
insert into grade values(80,89,’B’)
insert into grade values(70,79,’C’)
insert into grade values(60,69,’D’)
insert into grade values(0,59,’E’)
现查询所有同学的Sno、Cno和rank列。

以上是关于查询每门课成绩最高分的同学的sql语句,输出课程名,姓名,学号,分数。表的结构如下。写出完整的sql语句的主要内容,如果未能解决你的问题,请参考以下文章

SQL:查询每门课程的课程名、选课学生姓名及其学号,选课人数

SQL查询每门课程最高分学生的学号,课程号,成绩

用一条sql语句查询出“每门”课程都大于80分的学生姓名

sql server查询问题。

08 学生课程分数的Spark SQL分析

数据库SQL语句练习题10--18