我试图找出报表生成器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个数据集,这两个数据集都有Source
和Count_of_Source
列。
编辑:我发现我无法使用Lookup功能,我认为我可能会这样做。它只是在一个数据集中查找并在另一个数据集中找到匹配项,并以与Excel的vlookup / hlookup类似的方式从同一行中提取值。
编辑更多信息:我发现这个答案https://stackoverflow.com/a/24312870/1804496向我展示了我可以在我的表达式上使用scope参数来指定我的第二个数据集的名称。我添加了一个使用表达式=SUM(Fields!Count_of_Source.Value, "DataSet2")
的第二个值成员,但该图表看起来完全错误,我不知道如何解决它。看起来我的第二个数据集中的单行重复n
次,其中n
等于第一个数据集中唯一Source
值的数量。不知道那里发生了什么。
答案 0 :(得分:2)
组合数据集的最佳方法是使用SQL Server。因此,您只需添加一个新数据集并粘贴两个查询,并在它们之间加UNION ALL
。