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