【问题标题】:Trying to use a group by statement in an aggregate in SSRS Report Builder 2008尝试在 SSRS Report Builder 2008 的聚合中使用 group by 语句
【发布时间】:2013-04-11 16:40:06
【问题描述】:
我在 SSRS 2008 中有一份报告,其中包含两个行分组。最低级别的详细信息按法律案件分组,然后有一个按外部律师姓名分组的摘要行。数据集中的查询实际上返回的记录的详细程度低于这两个分组,它返回的是法律案件的个人账单支付。因此,每个法律案件都有很多账单支付,每个外部律师也有很多法律案件。我要显示的最后一列是外部律师评估分数,每个法律案件都有 1 分。详细信息行的分数显示良好,但是当我尝试进行聚合(总和或平均值)时,它没有正确聚合。它正在计算每笔账单支付的分数,而不是通过法律案例来计算。因此,例如,如果一个法律案件的一名外部律师得分为 10,并且支付了 3 笔账单,它将为该法律案件分配 3 个 10,而不仅仅是 1。有没有一种方法可以在我的汇总声明,以便按法律案件而不是账单支付对外部律师的分数进行分组?
【问题讨论】:
标签:
ssrs-2008
reporting-services
ssrs-grouping
【解决方案1】:
您的分组是按级别划分的。因此,如果您有父组,则应选择“添加组标题”选项。然后,您将在新行上有数据。然后你可以在那里进行计算,它会正确地对聚合数据进行分组。
EG:
这行不通:
Single Line: Group1Data, DetailData, Sum(DetailData)
它只会重复 DetailData 两次,因为详细级别与组相同
如果您的分组正确完成,这应该可以工作:
Header Line: Group1Data, Sum(DetailData)
Detail Line: (blank) , DetailData
您可以有许多标题行,例如每种情况一个。但是下面的详细信息由组定义定义,并且每次仅显示该组。这也适用于多个级别的分组。
【解决方案2】:
由于该值被复制,您将使用的聚合是 First()。