【发布时间】:2016-03-16 20:59:23
【问题描述】:
我正在尝试找到一种方法来使用Group By 功能创建一个表格,其中分数的分子按列和行分组,分母仅按列分组。
这是我现有的表达方式:
=Round(Sum(Fields!Days_In_Step.Value)/CountDistinct(Fields!ID.Value),1, MidpointRounding.AwayFromZero)
当按行 (groupName) 和列 (month/year) 分组时,分子 (Sum(Fields!Days_In_Step.Value)) 给了我很好的数据,但分母 (CountDistinct(Fields!ID.Value)) 也按行 (groupName) 分组,我没有想要那个。
我有一个 SQL 解决方案,但如果可能的话,我会尝试在 SSRS 表达式中完成这一切。
编辑 样本数据:
看起来像这样。背景是这些分组是天数,而“全部”是票数,所以我们试图看看谁在他们的票上坐得更久。
这是一个模型,包括使用数据透视表的示例数据集:
编辑 2
这是一个完整的样本数据集:
https://docs.google.com/spreadsheets/d/1rYPMcrLNB-FZN64Fn2-y3FtnM2iQo2VMH7YTdfiVnKM/edit?usp=sharing
我需要按月和按年进行分组,并且我不想在分组行中看到“排除”,但是如果不从总体人口中删除它们就不能从 tablix 中过滤出来,这是必需的分母。
【问题讨论】:
-
分享样本数据和预期结果以帮助您。
-
ALL行是如何计算的?我看到这是一个不同的 ID 计数,但在哪个范围内?如果您共享原始数据集而不探索复制您的场景会更好。 -
那很好,是的。擦洗需要时间。
All是门票的数量,这些门票可以随时归属于 3 个不同的组。因此,All是按月计算的票数,而Groups是按月和按组计算的票日总和。
标签: reporting-services ssrs-2012 reportbuilder3.0