|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
本帖最后由 wuxiang_123 于 2012-4-21 09:12 编辑
要求:
使用MQ完成的效果:
- 思路:
- 第一部分:找出排名值比指定值大中的最小值和其对应的总分,即获取临界值。用【指定值-临界值排名+临界值对应总分在原始数据源出现的次数】即为改临界值的总分多加了的次数,将此*临界值总分则为多加了的总分之和。
- 第二部分:找出排名值比指定值小于或等于的总分之和
- 第三部分:找出数据源的总分之和,将总数-指定值获得平均值的分母。
- 第四部分:第一部分计算出多加的总分之和和第二部分计算的总分之和相加,即为应减去的指定前N值总分之和,然后用【(第三部的总分之和-指定前N值总分之和)/(总数-指定前N值)】从而得出需求的平均值。
- OLE DB:
- SELECT 班级,SUM(总分)/(SUM(数)-F1) AS 平均值 FROM
- (SELECT F1 AS 班级,F2 AS 总分,1 AS 数 FROM [数据源$A2:B]
- UNION ALL
- SELECT A1.班级,-A1.临界总分*(A1.F1-A1.临界排名+SUM(1)),0 FROM
- (SELECT 班级,F1,MAX(总分) AS 临界总分,MIN(排名) AS 临界排名 FROM
- (SELECT A.F1 AS 班级,A.F2 AS 总分,C.F1,SUM(1) AS 排名 FROM (SELECT DISTINCT * FROM [数据源$A2:B])A,[数据源$A2:B]B,[结果$B1:B1]C
- WHERE A.F1=B.F1 AND A.F2<=B.F2
- GROUP BY A.F1,A.F2,C.F1
- HAVING SUM(1)>C.F1)
- GROUP BY 班级,F1)A1,
- [数据源$A2:B]A2
- WHERE A1.班级=A2.F1 AND A1.临界总分=A2.F2
- GROUP BY A1.班级,A1.临界总分,A1.临界排名,A1.F1
- UNION ALL
- SELECT A2.班级,-SUM(A1.F2),0 FROM [数据源$A2:B]A1,
- (SELECT A.F1 AS 班级,A.F2 AS 总分 FROM (SELECT DISTINCT * FROM [数据源$A2:B])A,[数据源$A2:B]B,[结果$B1:B1]C
- WHERE A.F1=B.F1 AND A.F2<=B.F2
- GROUP BY A.F1,A.F2,C.F1
- HAVING SUM(1)<=C.F1)A2
- WHERE A1.F1=A2.班级 AND A1.F2=A2.总分
- GROUP BY A2.班级)Q1,[结果$B1:B1]
- GROUP BY 班级,F1
- MQ:
- SELECT 班级,SUM(总分)/(SUM(数)-?) AS 平均值 FROM
- (SELECT 班级,总分,1 AS 数 FROM [数据源$]
- UNION ALL
- SELECT A1.班级,-A1.临界总分*(?-A1.临界排名+SUM(1)),0 FROM
- (SELECT 班级,MAX(总分) AS 临界总分,MIN(排名) AS 临界排名 FROM
- (SELECT A.班级,A.总分,SUM(1) AS 排名 FROM (SELECT DISTINCT * FROM [数据源$])A LEFT JOIN [数据源$]B
- ON A.班级=B.班级 AND A.总分<=B.总分
- GROUP BY A.班级,A.总分
- HAVING SUM(1)>?)
- GROUP BY 班级)A1,
- [数据源$]A2
- WHERE A1.班级=A2.班级 AND A1.临界总分=A2.总分
- GROUP BY A1.班级,A1.临界总分,A1.临界排名
- UNION ALL
- SELECT A1.班级,-SUM(A1.总分),0 FROM [数据源$]A1,
- (SELECT A.班级,A.总分 FROM (SELECT DISTINCT * FROM [数据源$])A LEFT JOIN [数据源$]B
- ON A.班级=B.班级 AND A.总分<=B.总分
- GROUP BY A.班级,A.总分
- HAVING SUM(1)<=?)A2
- WHERE A1.班级=A2.班级 AND A1.总分=A2.总分
- GROUP BY A1.班级)
- GROUP BY 班级
复制代码
去掉前N项最大值后求平均值.rar
(55.85 KB, 下载次数: 47)
该贴已经同步到 wuxiang_123的微博
|
评分
-
2
查看全部评分
-
|