我有 2 个数据库:
服务器 1 上的数据库 1 Server2 上的数据库2
我创建了一个表格,给出了下面的一个小示例结果:
Name | Date | Total
Name1 10/04/2014 125,101
Name1 11/04/2014 125,101
Name2 10/04/2014 2,5
Name2 11/04/2014 2,5
因此,我从 Server1 上的 Database1 获取日期和名称值。
我通过在“总计”文本框字段上使用以下表达式来获取总计列,该表达式从 Server2 上的 Database2 查找总计:
=Join(LookupSet(Fields!Col1.Value, Fields!Col1a.Value, Fields!TotalCol.Value, "DataSetServer2"),",")
显然我想做的是得到以下结果:
Name | Date | Total
Name1 10/04/2014 125
Name1 11/04/2014 101
Name2 10/04/2014 2
Name2 11/04/2014 5
这可能吗?如果需要任何进一步的信息,请告诉我,抱歉我从未真正使用过 LookUpSet。
其他信息:
DataSet2用于查询Server1上的Database1来创建表,示例数据为:
Date | Col1 | Name
10/04/2014 UID01 Name1
11/04/2014 UID01 Name1
10/04/2014 UID02 Name2
11/04/2014 UID02 Name2
然后使用以下数据集查询 Server2 上的 Database2
Date | TotalCol | Col1a
10/04/2014 125 UID01
11/04/2014 101 UID01
10/04/2014 2 UID02
11/04/2014 5 UID02
最佳答案
使用您的示例数据集:
我根据第一个数据集创建了一个简单的表格:
表达式为:
=Lookup(Fields!Col1.Value & Fields!Date.Value
, Fields!Col1a.Value & Fields!Date.Value
, Fields!TotalCol.Value
, "DataSetServer2")
您会注意到,我正在将 Fields!Col1.Value & Fields!Date.Value
与 Fields!Col1a.Value & Fields!Date.Value
进行比较这里的前两个参数。您可以传递任何表达式,不必是一列。我使用的表达式提供了您所需的独特查找比较。
由于我们获取的是唯一行,因此可以将 LookupSet
替换为 Lookup
。
这给出了所需的结果:
您只需要找到一种使查找唯一的方法,即 Col
和 Date
的某种组合。您甚至可以在数据集中使用计算字段。
关于reporting-services - LookUpSet - 分组依据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23059364/