SSRS-总和为12个项目

时间:2018-06-26 08:18:51

标签: reporting-services

我有一个Total列,并用以下命令求和该行中的所有值:

=Sum(Fields!MyField.Value)

我如何只汇总最后12个项目?

这是有效的:

=Last(Fields!MyField.Value)

我需要类似下面的内容...

=Sum( LastX(Fields!MyField.Value, 12) )

1 个答案:

答案 0 :(得分:0)

您可以通过在主数据集查询中创建一个子查询来获得此结果。您只需要具有要按降序排序的值即可。

假设您有一个按价格按ASC顺序排序的表格。您想要对最后12个求和。您只需要翻转子查询中的排序并求和前12个。

SELECT OtherFields, (SELECT TOP 12 Sum(S1.MyField) FROM MyTable S1 ORDER BY S1.MyField DESC) AS BottomTwelveSum
FROM MyMainQueryTable

是的,此值将在数据集中重复,但是如果将其正确放置在表中应该没问题,只是不要在详细信息部分中显示该值。这不会添加其他行。另一个解决方案是使用子报表,但是这会加快渲染时间。