【发布时间】:2016-11-29 16:57:36
【问题描述】:
我想通过示例展示我的问题。 所以,我有学生,他们在不同的学校学习,我想按学校计算平均数,然后计算总平均数。
例子:
那么,我怎样才能得到这样的结果呢?
提前致谢!
还有一个选项 - 我在一个查询中执行此操作确实更舒服。
【问题讨论】:
-
到目前为止你尝试了什么?
-
@tamasRev 我尝试使用 avg("schoolAvg")over(),不同的分区情况,但这没有帮助。
-
@tamasRev 我有两种错误:如果我使用“avg(distinct ..)
-
两个问题...您希望 OUTPUT 为每个学生显示一行,还是每个学校仅显示一行?而且...您似乎想通过将学校平均数相加并除以学校数量来计算“全球”平均数-这是您想要/需要的吗?你确定吗?这是一种完全没有意义的计算“平均值”的方法; “全球”平均值应该是学校平均值的加权平均值,由每所学校的学生人数加权(这与从一开始就计算整个表格的平均值相同,无论“学校”如何)列)。
标签: sql oracle aggregate-functions