连接/合并具有完全相同列的2个DataSet

时间:2016-04-27 15:51:26

标签: reporting-services merge ssrs-2012 ssrs-tablix reportbuilder3.0

我试图找出报表生成器3.0中是否有任何方法可以将两个具有完全相同列名的两个不同“DataSet”对象连接或合并到一组数据中,以便在一个数据集中显示饼图。

对于这两个数据集,我的SQL查询看起来与此类似:

DECLARE @DateCreatedStart date = GETDATE()-14
DECLARE @DateCreatedEnd date = GETDATE()

SELECT i.Source, COUNT(*) AS Count_of_Source
FROM [DBName].[dbo].[Items] i
WHERE (i.DateCreated BETWEEN @DateCreatedStart AND @DateCreatedEnd)
GROUP BY i.Source

所以我最终得到了2个数据集,这两个数据集都有SourceCount_of_Source列。

编辑:我发现我无法使用Lookup功能,我认为我可能会这样做。它只是在一个数据集中查找并在另一个数据集中找到匹配项,并以与Excel的vlookup / hlookup类似的方式从同一行中提取值。

编辑更多信息:我发现这个答案https://stackoverflow.com/a/24312870/1804496向我展示了我可以在我的表达式上使用scope参数来指定我的第二个数据集的名称。我添加了一个使用表达式=SUM(Fields!Count_of_Source.Value, "DataSet2")的第二个值成员,但该图表看起来完全错误,我不知道如何解决它。看起来我的第二个数据集中的单行重复n次,其中n等于第一个数据集中唯一Source值的数量。不知道那里发生了什么。

1 个答案:

答案 0 :(得分:2)

组合数据集的最佳方法是使用SQL Server。因此,您只需添加一个新数据集并粘贴两个查询,并在它们之间加UNION ALL