标题:一段逻辑,求指导
只看楼主
TsugumiYuu
Rank: 3Rank: 3
等 级:论坛游侠
威 望:6
帖 子:32
专家分:126
注 册:2016-5-14
 问题点数:0 回复次数:2 
一段逻辑,求指导
有学院表Student,有数据:
学员id
学员名字name
科目subject
成绩score
班级编码classid
欲求每班每科最高成绩

想请问下我的这段代码能不能解决:
SELECT a.classid,a.subject,b.maxscore
FROM Student a,
(SELECT classid,MAX(score) maxscore FROM a GROUP BY classid) b
WHERE a.classid=b.classid
GROUP BY subject;

纠结了好久,想先分班级,后分科目,但是就晕掉了
2016-06-21 11:43
TsugumiYuu
Rank: 3Rank: 3
等 级:论坛游侠
威 望:6
帖 子:32
专家分:126
注 册:2016-5-14
得分:0 
顺带问下这段逻辑对不对
SELECT a.name,a.score,a.classid,b.avgscore
FROM Student a,
(SELECT classid,avg(score) avgscore
FROM student
GROUP BY classid) b
WHERE a.classid=b.classid
AND a.score>b.avgscore;
只是写法上有没有问题
2016-06-21 14:43
super良人
Rank: 1
等 级:新手上路
帖 子:7
专家分:1
注 册:2016-8-24
得分:0 
每科最高成绩:别想太复杂,sql很强大的;
SELECT classid,subject,MAX(score)
FROM Student
GROUP BY subject,classid;
2016-08-24 14:59



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




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

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