【问题标题】:SSRS Report - Column auto generated in date range by weeklySSRS 报告 - 每周在日期范围内自动生成的列
【发布时间】:2019-05-22 03:28:35
【问题描述】:

我正在尝试制作可以在日期范围内每月自动计数的 SSRS 报告。

我正在使用 SQL 2012 和 VS 2010

以下是我正在使用的 SQL,例如:

选择 p.YearGroup ,count(p1.PupilID) as Aug13 ,count(p2.PupilID) as Sep13 ,count(p3.PupilID) as Oct13 ,count(p4.PupilID) as Nov13 ,count(p5.PupilID) as Dec13 ,count(p6.PupilID) as Jan14 ,count(p7.PupilID) as Feb14 来自学生作为 p 在 p.PupilID=p1.PupilID 和 p1.StartDate 在 '2013-08-01 00:00:00' 和 '2013-09-01 00:00:00' 之间的 LEFT OUTER JOIN 学生作为 p1 LEFT OUTER JOIN Pupils AS p2 on p.PupilID=p2.PupilID 和 p2.StartDate 在 '2013-09-01 00:00:00' 和 '2013-10-01 00:00:00' 之间 在 p.PupilID=p3.PupilID 和 p3.StartDate 在 '2013-10-01 00:00:00' 和 '2013-11-01 00:00:00' 之间的 LEFT OUTER JOIN 学生作为 p3 在 p.PupilID=p4.PupilID 和 p4.StartDate 在 '2013-11-01 00:00:00' 和 '2013-12-01 00:00:00' 之间的 LEFT OUTER JOIN 学生作为 p4 LEFT OUTER JOIN Pupils AS p5 on p.PupilID=p5.PupilID 和 p5.StartDate 在 '2013-12-01 00:00:00' 和 '2014-01-01 00:00:00' 之间 LEFT OUTER JOIN Pupils AS p6 on p.PupilID=p6.PupilID 和 p6.StartDate 在 '2014-01-01 00:00:00' 和 '2014-02-01 00:00:00' 之间 在 p.PupilID=p7.PupilID 和 p7.StartDate 在 '2014-02-01 00:00:00' 和 '2014-03-01 00:00:00' 之间的 LEFT OUTER JOIN 学生作为 p7 GROUP BY p.YearGroup

结果应该是这样的: 年组 | 8 月 13 日 | 9月13日|十月 13 | ... 1 | 55 | 56 | 56 | ... 2 | 43 | 42 | 44 | ... ...

请帮忙

【问题讨论】:

    标签: sql reporting-services


    【解决方案1】:

    您需要做的就是将您的字段放入数据集中(年、年月、日等...)。然后只需将矩阵或 Tablix 添加到您的报告中,然后将您的字段拖放到其中。根据您的示例,我不确定您的安排应该如何,但只需尝试一下,您很快就会找到正确的顺序。

    【讨论】:

    • 谢谢。但我想使用一个允许自动生成日期时间的查询。我的查询刚刚使用 Self Join 创建了手册。有什么想法吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多