Sql 行分组的SSRS查找

Sql 行分组的SSRS查找,sql,reporting-services,ssrs-2008-r2,ssrs-2012,ssrs-tablix,Sql,Reporting Services,Ssrs 2008 R2,Ssrs 2012,Ssrs Tablix,我正在尝试向tablix添加一个使用不同数据集的列。现在,dataset1保存新数据,dataset2保存旧的比较数据 tablix使用的是数据集1,正在讨论的行是按D_ID分组的。现在,我添加了一个需要与D_ID(数据集1)绑定到D_ID(数据集2)的列 然而,这确实考虑到我需要的是将来自BUD_OLD的所有行(D_ID=smth)相加。查找只返回一个值,而不是具有D_ID的所有值的总和 范例 D_ID SUM(BUD_NEW+ACK_BUD_NEW) SUM

我正在尝试向tablix添加一个使用不同数据集的列。现在,dataset1保存新数据,dataset2保存旧的比较数据

tablix使用的是数据集1,正在讨论的行是按D_ID分组的。现在,我添加了一个需要与D_ID(数据集1)绑定到D_ID(数据集2)的列

然而,这确实考虑到我需要的是将来自BUD_OLD的所有行(D_ID=smth)相加。查找只返回一个值,而不是具有D_ID的所有值的总和

范例

D_ID        SUM(BUD_NEW+ACK_BUD_NEW)           SUM(BUD_OLD+ACK_BUD_OLD)         
**100**           **75**  (40+35)                    **15**(SHOULD BE 15+20=35) 

如何获取总和?

查找只获取一个值

您需要使用LOOKUPSET和一个特殊函数来对结果进行求和

幸运的是,这已经做过了

投标文件:

查找:使用查找从指定数据集中检索存在1对1关系的名称-值对的值。 例如,对于表中的ID字段,可以使用查找来 从未绑定的数据集中检索相应的名称字段 到数据区域

LOOKUPSET:使用LOOKUPSET从指定的数据集中检索一组值,其中有一对1对多的名称-值对 关系例如,对于表中的客户标识符 可以使用lookupper检索的所有关联电话号码 该客户来自未绑定到数据区域的数据集


您的表达式需要第二个“和”

请尝试以下操作:


-1*sum(查找(字段!D_ID.Value,字段!D_ID.Value,字段!BUD_OLD.Value,“OLD”)+sum(查找(字段!D_ID.Value,字段!D_ID.Value,字段!ACK_BUD_OLD.Value,“OLD”)

共享两个数据集的样本,以便重新创建您的场景。@alejandrozuleta-c'mon Al,我们不需要任何粘滞数据。@HannoverFist,也许您是对的,但大多数用户不知道他们的数据可能有什么问题,通常情况下,您会根据模糊的数据描述提供答案,然后OP再次表示不会rk,因为数据的结构并不像您所想的那样。
D_ID        SUM(BUD_NEW+ACK_BUD_NEW)           SUM(BUD_OLD+ACK_BUD_OLD)         
**100**           **75**  (40+35)                    **15**(SHOULD BE 15+20=35)