我有一份报告输出相对简单的客户数。它输出系统中的所有内容,因为不需要数据参数。他们想要看到一切。
抛出我的是,他们希望在一个月的第24天到下个月的第23个月分组。
例如,2016年10月应计算2016年10月24日至2016年11月23日之间的所有数据,之前的Septeber应在2016年9月24日至2016年10月23日之间进行分组等。
简而言之,是否有可能将该月的24日分组到下个月的23日?
很高兴为这样的高级ssrs任务提供更多信息。我确实在寻找这样的解决方案但却找不到合适的解决办法。任何帮助非常感谢。
答案 0 :(得分:1)
可以通过增强查询来实现此要求。比如说,你有以下几点:
select
t.Date,
t.AggregatedField
from SomeSchema.SomeTable as t
你可以做下一个:
select
MonthNumber =
case
when DATEPART(DAY, t.Date) >= 24 then DATEPART(MONTH, t.Date)
else DATEPART(MONTH, t.Date) - 1
end,
t.AggregatableField
from SomeSchema.SomeTable as t
您将获得的输出将类似于(month_number, field_to_aggregate)
。然后,您需要按month_number
对数据进行分组,您可以直接在SQL中执行此操作,或使用RDL报表分组(首先考虑提供最佳性能)。
要构建月份名称,您可能需要提取年份编号,如下所示:
DATEPART(YEAR, t.Date)
然后使用月号anhd年号来构建日期。