设
S(SNO,SNAME, AGE, SEX),其属性分别表示学号、学生姓名、年龄、性别。
SC(SNO,CNO,GRADE),其属性分别表示学号、课程号、成绩。
请教:"各门功课比王小华好的有哪些同学"怎么做?
S(SNO,SNAME, AGE, SEX),其属性分别表示学号、学生姓名、年龄、性别。
SC(SNO,CNO,GRADE),其属性分别表示学号、课程号、成绩。
请教:"各门功课比王小华好的有哪些同学"怎么做?
解决方案 »
- cxgrid怎样动态的选中某行某列中一部分字符串?
- 各位老大看看为什么数据库连接失败?
- 当鼠表用右键点击文件夹下的*.xls文件时,在出现的快捷菜菜单中显示自己编制的条目,再点击该菜单条目时,对该*.xls进行处理?
- 哪位使用过“天大天财”的高校学生收费系统?
- 急问,用ADO连接ACCESS数据库对表操作不能编辑只能访问
- 我想用光标VK_UP实现光标向上一个控件移动,怎么做?就好象TAB按钮使光标移向下一个控件一样?
- QR如何解决自动换行的问题
- 郁闷,散分
- 请问dbgrideh有没有自动序号功能! 就是表格的第一列有个序号,可以随着我的记录排列。如果有,怎样设置。谢谢。立即给分。
- listview复制内容
- 动态创建
- 一个古老的问题:想学好Delphi,要看什么书?
S,
(SELECT SNO,COUNT(*) AS C FROM SC ,
(SELECT SNO,CNO,GRADE FROM SC,S WHERE S.SNO = SC.SNO AND S.SNAME = '王小华') A
WHERE SC.CNO = A.CNO AND SC.GRADE > A.GRADE) B
WHERE S.SNO = B.SNO AND B.C = (SELECT COUNT(*) FROM SC,S WHERE S.SNO = SC.SNO AND S.SNAME = '王小华')
你的代码之列出了部分功课,我要的是各门功课比王小华好再来看看firetoucher(风焱)的代码,请稍候...
有结果,给我短信,不管正不正确
OK! 给U短信!THX
(select count(*) from s a left join sc b on a.sno=b.sno
where b.grade >(select grade from s c left join sc d on c.sno=d.sno where s.sname='小华' and d.cno=b.cno and a.s.sno=c.sno))=(SELECT COUNT(*) FROM SC,S WHERE S.SNO = SC.SNO AND S.SNAME = '王小华')
综合了2位,最后答案如下:
select b.sno, count(b.CNO) from S a left join SC b on a.sno=b.sno
where b.grade >
(select grade
from S c left join SC d on c.sno=d.sno
where c.sname='王小华' and d.cno=b.cno )
group by b.sno
HAVING count(b.CNO)>= ( SELECT COUNT(*) FROM SC,S WHERE S.SNO = SC.SNO AND S.SNAME = '王小华' )
select b.sno, count(b.CNO) from S a , SC b
where a.sno=b.sno and b.grade >
(select grade
from S c , SC d
where c.sno=d.sno and c.sname='王小华' and d.cno=b.cno )
group by b.sno
HAVING count(b.CNO)>= ( SELECT COUNT(*) FROM SC,S WHERE S.SNO = SC.SNO AND S.SNAME = '王小华' )现在结帖!
select sname from S where sno in
(select b.sno from S a , SC b
where a.SNO=b.SNO and a.sno=b.sno and b.grade >
(select grade
from S c , SC d
where c.sno=d.sno and c.sname='王小华' and d.cno=b.cno )
group by b.sno
HAVING count(b.CNO)>= ( SELECT COUNT(*) FROM SC,S WHERE S.SNO = SC.SNO AND S.SNAME = '王小华' )
)