这有点难以用文字解释......我试图计算矩阵中分组不同值的总和。比方说,我有一个SQL查询返回的以下数据:分组的不同值的总和
------------------------------------------------
| Group | ParentID | ChildID | ParentProdCount |
| A | 1 | 1 | 2 |
| A | 1 | 2 | 2 |
| A | 1 | 3 | 2 |
| A | 1 | 4 | 2 |
| A | 2 | 5 | 3 |
| A | 2 | 6 | 3 |
| A | 2 | 7 | 3 |
| A | 2 | 8 | 3 |
| B | 3 | 9 | 1 |
| B | 3 | 10 | 1 |
| B | 3 | 11 | 1 |
------------------------------------------------
有查询其他一些数据,但它是不相关的。 ParentProdCount是特定于ParentID的。
现在,我有一个MS报表设计器中的矩阵,我试图计算ParentProdCount的总和(按“组”分组)。如果我只是添加表达式
=Sum(Fields!ParentProdCount.Value)
我得到结果20组A和组3,这是不正确的。 A组和B组的正确值应为5,如果没有涉及到ChildID,则不会发生这种情况,但我必须在同一个矩阵中使用一些其他特定于儿童的数据。
我试图嵌套FIRST()和SUM()聚合函数,但显然它不可能有嵌套的聚合函数,即使他们有定义的范围。
我很确定有一些方法可以计算分组独立总和,而无需创建另一个SQL查询。任何人都知道如何做到这一点?
对于任何有此问题的人,我试着总结一个十进制值并得到这个错误:“First,Last,Previous,Count和CountDistinct以外的聚合函数只能聚合单个数据类型的数据。我通过在Sum函数中将Nothing替换为Nothing来解决问题。 – Rono