标题:麻烦各位看看这样的SQL查询语句可以吗?
取消只看楼主
chinacdb
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-7-6
 问题点数:0 回复次数:4 
麻烦各位看看这样的SQL查询语句可以吗?

学生表 S(SN0,SNAME) 其中SNO:学号 SNAME:学生姓名
教师表 T(TNO,TNAME,SCNO) 其中TNO:工号 TNAME:教师姓名 SCNO:教授课程
成绩表 SC(SCNO,SCNAME,SNO,SCGRADE) 其中SCNO:课程代号 SCNAME:课程名 SCGRADE:课程成绩

1:找出没有选修李伟老师课程的所有同学的姓名;

2:找出平均成绩最高的同学的姓名及每门功课的成绩;

3:找出至少有两门(含两门)功课不及格的同学的姓名及不及格课程的成绩;

请用SQL语句实现上面的查询!

1: select sname from s where sno in (select sno from sc where scno not in(select scno from t where tname='李伟'))

2: select sname,scname,scgrade from s,sc where s.sno=sc.sno and sc.sno=
(select top 1 sno from sc group by sno order by avg(scgrade) desc)

3: select sname,scname,scgrade from s,sc where s.sno=sc.sno and sc.sno in
(select sno from sc group by sno having sum(case when scgrade<60 then 1 else 0 end)>1)


麻烦各位看看这样写可以吗?如果不妥请写出你的见解!谢谢!

搜索更多相关主题的帖子: SQL 语句 李伟 课程 SCNO 
2006-07-06 16:14
chinacdb
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-7-6
得分:0 
对于第二个,如果出现平均成绩的前几名是相同的,能否选择全部满足条件的信息!
2006-07-10 18:36
chinacdb
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-7-6
得分:0 

我今天测试了一下不可以啊,只能选出一个符合条件的语句!

select sname,scname,scgrade from s,sc where s.sno=sc.sno and sc.sno in (select sno from sc group by sno having avg(scgrade) >=all(select avg(scgrade) from sc group by sno))

上面这个语句可以满足,但我觉得这样太复杂了,执行起来会满,不知道有没有对
select sname,scname,scgrade from s,sc where s.sno=sc.sno and sc.sno=(select top 1 sno from sc group by sno order by avg(scgrade) desc)

进行修改的语句,再次麻烦各位了!
最后谢谢给予回帖的热心朋友 林升LouisXIV

2006-07-13 15:20
chinacdb
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-7-6
得分:0 


这样可以吗?
select sname,scname,scgrade from s,sc where s.sno=sc.sno and sc.sno in (select sno from sc group by sno having avg(scgrade)=(select top 1 avg(scgrade) from sc group by sno order by avg(scgrade) desc)

测试是可以的,就是不知道这样的复杂度和
select sname,scname,scgrade from s,sc where s.sno=sc.sno and sc.sno in (select sno from sc group by sno having avg(scgrade) >=all(select avg(scgrade) from sc group by sno))
比那个低点!

2006-07-13 15:27
chinacdb
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-7-6
得分:0 
想想感觉是一样的,郁闷!
2006-07-13 15:28



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-76902-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.107752 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved