标题:同时计算平均分和名次
只看楼主
eepcvfp
Rank: 2
等 级:论坛游民
帖 子:166
专家分:15
注 册:2013-8-12
得分:0 
谢谢sdta版主。
2015-08-17 18:13
eepcvfp
Rank: 2
等 级:论坛游民
帖 子:166
专家分:15
注 册:2013-8-12
得分:0 
这是 zyg8108 的方法,分享一下:

Select 班级ID, 语文 As 语文平均分, (Select 1 + Count(语文);
    From (Select 班级ID, Avg(语文) As 语文 ;
    From ChengJiBiao ;
    Group By 班级ID) As t1 ;
    Where 语文 > T2.语文) As 平均分名次 ;
    From (Select 班级ID, Avg(语文) As 语文 ;
    From ChengJiBiao ;
    Group By 班级ID) As t2 ;
    Order By 班级ID  && Desc
2015-08-18 12:12
eepcvfp
Rank: 2
等 级:论坛游民
帖 子:166
专家分:15
注 册:2013-8-12
得分:0 
想听听其他高手的意见。
2015-08-18 12:13
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
写代码很重要的一个思考点,是这段代码是否能够很好地增减功能。

授人以渔,不授人以鱼。
2015-08-18 12:48
eepcvfp
Rank: 2
等 级:论坛游民
帖 子:166
专家分:15
注 册:2013-8-12
得分:0 
回复 14楼 TonyDeng
是的,我也在思考这个问题。这个题目只是把我的问题简化了,实际上我的问题远比这个例子复杂,

考试ID     班级ID    语文    语文平均分   语文名次   数学   数学平均分   数学名次  ……
1            1        80                              90
1            2        78                              89
2            1        90                             .NULL.
2            2        85                             .NULL.

                        ……

这才是我的实际问题,要求出 多次考试、多个班级、多个学科的平均分及各班在本次考试中的平均分名次,且不是每次考试的学科都一样,比如:第一次考试考了语文、数学两科,而第二次考试只考了语文一科。

大家能提供一个思路吗?
2015-08-18 13:06
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
隐瞒事实祗能得到无效的解决方案

授人以渔,不授人以鱼。
2015-08-18 13:07
eepcvfp
Rank: 2
等 级:论坛游民
帖 子:166
专家分:15
注 册:2013-8-12
得分:0 
不是隐瞒,其实,是想先把问题简单化,得到一些思路后再思考。

呵呵,我不想一开始就把一个复杂的问题抛给大家帮忙,落得个“不劳而获”的名声。

毕竟大家的时间都是宝贵的,版主勿怪。
2015-08-18 13:10
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
哦,那看你最终花了多少时间,到底是节省了还是浪费了。

授人以渔,不授人以鱼。
2015-08-18 13:14



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




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

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