我有一个简单的数据集,显示了玩家得分的数量。它在[周数] x轴上绘制。我添加了一个运行总和计算,作为一条线,按玩家(颜色)分割
对于每个星期,我想通过迄今为止达到的总积分确定最佳玩家 例如,在第3周,顶级球员是绿色,总共有8分。
我尝试创建LOD函数{FIXED [WEEK]: MAX(RunningSum)}
,但它抱怨我无法聚合聚合
我尝试了WINDOW_MAX(),RANK(),并尝试调整Table Calc,Advanced,Partitioning和Addressing功能。
是否无法通过离散[周数]来识别一系列运行总计的最大值?
通过在外部查询中包装查询并应用定义了分区的Window函数,可以在TSQL中轻松完成此操作。
答案 0 :(得分:5)
你绝对可以使用RANK(),你只需要确保使用Player计算表计算。我想你的[RunningSum]
字段看起来像这样:
RUNNING_SUM(SUM([Points]))
创建表计算(让我们称之为[Player Rank]
):
RANK([RunningSum])
然后我们需要编辑表计算。您可以直接从“计算字段”编辑窗口执行此操作(“确定”和“应用”按钮上方有一个蓝色链接,类似于“默认表计算”)。
我们想要计算玩家的等级,所以我们将进入“Compute Using:”并选择Player。
要进行快速完整性检查,请将[Player Rank]
拖到工具提示中并将其检出。