0
A
回答
0
我不知道这是否是但得到的图表数据我会逆转置的最佳方式您的数据并在数据集中创建两列。以下是一些示例代码,可以将您所示的数据集变得更容易处理。
-- CREATE A Month NUmber table
-- Create this as a physical table, I'm doing this as a Table variable for this exmaple only
-- CREATE TABLE dbo.Months (Month_Name varchar(3), Month_Number int)
DECLARE @Month TABLE(Month_Name varchar(3), Month_Number int)
INSERT INTO @Month VALUES
('Jan', 1), ('Feb', 2), ('Mar', 3), ('Apr', 4), ('May', 5), ('Jun', 6),
('Jul', 7), ('Aug', 8), ('Sep', 9), ('Oct', 10), ('Nov', 11), ('Dec', 12)
-- CREATE and populate dummy table
DECLARE @t table (FranchiseNumber int, Report_Year int, Jan int, Feb int, Mar int, Apr int, May int, Jun int, Jul int, Aug int, Sep int, Oct int, Nov int, Dec int)
INSERT INTO @t Values
(103332, 2016, 578,591,616,611,611,577, NULL, NULL, NULL, NULL, NULL, NULL),
(103332, 2017, 343,332,324,310,309, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
DECLARE @d TABLE(FranchiseNumber int, Month_Name varchar(3), Previous_Year int, Current_Year int)
-- unpivot, create prev and current year columns and add a month number to help sort the Axis
INSERT INTO @d
select
FranchiseNumber
, Month_Name
--, DATEPART(MM, Month_Name + ' 01 1999') AS Month_Number -- REMOVED
, SUM(CASE Report_Year WHEN 2016 THEN Month_Value ELSE NULL END) AS Previous_Year
, SUM(CASE Report_Year WHEN 2017 THEN Month_Value ELSE NULL END) AS Current_Year
from
@t p
UNPIVOT
(Month_Value FOR
Month_Name IN (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec)
) as unPiv
GROUP BY FranchiseNumber, Month_Name, DATEPART(MM, Month_Name + ' 01 1999')
SELECT d.FranchiseNumber, m.Month_Name, m.Month_Number, d.Previous_Year, d.Current_Year
FROM @Month m
LEFT JOIN @d d ON m.Month_Name = d.Month_Name
图表设计看起来像这样。
我所做的只是创造一个线图阻力当前和上年列入值区域,单击值区域Previous_Year下拉菜单,更改图表类型列。
后,我右键单击在水平轴上,并通过MONTH_NUMBER分类
更新:你可能会需要右键单击水平轴,选择属性,然后更改间隔1或不是所有的一个月标签可能会显示。
这并不完美,但它应该让你接近。
要生成下面的表格,请添加一个新的数据集,指向您的原始数据并添加一个新的指向它的tablix。
希望有所帮助。
相关问题
- 1. SSRS中的条件报告
- 2. 带日期格式的SSRS报告
- 3. 带有SSRS报告的Oracle数据库
- 4. 导出带有Jump的SSRS报告以Excel格式报告?
- 5. 显示SSRS报告中的条形码
- 6. SSRS和缓存报告
- 7. 从SSRS报告
- 8. SSRS在报告
- 9. SSRS报告值
- 10. SSRS - 子报告
- 11. SSRS报告
- 12. 在SSRS报告
- 13. SSRS报告URL
- 14. wget的SSRS报告
- 15. 在SSRS报告中显示条形码
- 16. SSRS Microsoft报告:有条件分组
- 17. SSRS报告订阅
- 18. 删除SSRS报告
- 19. SSRS报告超时
- 20. ssrs打印报告
- 21. SSRS 2008,报告表
- 22. SSRS链接报告
- 23. SSRS报告参数
- 24. 分组SSRS报告
- 25. SSRS - 报告地点
- 26. SSRS报告结构
- 27. SSRS报告语言
- 28. SSRS报告服务
- 29. SSRS报告执行
- 30. XSLT在SSRS报告
这对我来说很好,谢谢,但我有一个数据问题。我需要在结果集1-12中返回12个月,如果没有数据,则为空,所以我的图表总是显示12个月。 – Thomas
我更新了代码。基本上我已经添加了一个月表。在这样的工作中,在数据库中有物理日期表和诸如此类的东西是很有用的。基本上,我采取了大部分我们之前拥有的UNPIVOT,并且将其加入到月份和月份数字表中,以便我们获得图表的全套数据。 –
如果以上解决了您的初始问题,请将答案标记为已接受。 –