检索SSRS中的最后3个值

时间:2016-07-15 15:17:38

标签: reporting-services bids

我有一份SSRS表,其中包含过去12个月的余额详情。我需要创建一个列来计算最后和(最后一个月)余额之间的差异。例如:( 7月余额 - 6月余额)。关于如何解决这个问题的任何建议?

提前致谢。

2 个答案:

答案 0 :(得分:0)

如果您的数据库是Sql Server 2012或更高版本,则应使用Lag function。像这样:

select Month, balance, lag(balance) over (order by Month) as PreviousBalance
  from table 
order by Month;

答案 1 :(得分:0)

我在下面的查询中使用了AdventureWorks / MDXStepByStep数据库,该数据库加入当前月份和上个月。

SELECT  CurruentDate    =   a.[DateKey]
        ,LastMonthDate  =   b.DateKey
        ,CurrentValue   =   a.[FullDateAlternateKey]
        ,LastMonthValue =   b.[FullDateAlternateKey]
        ,[Difference]   =   a.[DateKey] - b.[DateKey]
  FROM  [dbo].[DimDate] a
        JOIN [dbo].[DimDate] b
        on DATEADD(month, 1, b.FullDateAlternateKey) = a.FullDateAlternateKey