我有一些數據透視查詢(SQL Server)的問題。 的任務很簡單:一個人我一定要收集它的收入統計每個月的一年,但每一個新的一個月收入是基於previuos income
加上current month income
複雜聚合的Sql數據透視查詢
只是爲了舉例。讓人不得不每月3K的工資(爲了簡化它是一個常數),那麼查詢結果應該是這樣的:
Year | Jan | Feb | ... | Dec
2016 | 3k | 6k | ... | 36k
2015 | 3k | 6k | ... | 36k
...
僞SQL查詢是:
select * from (
select
year(date) as year,
month(date) as month
salary,
from income
where personId = 'some id'
) as tmp
pivot (
sum(salary),
for month in ([1], [1..2], [1..3], ...)
) as pvt
的問題是有SQL中沒有[1..2]表達式。 使用標準SQL執行此類查詢的方式是什麼?
只是一些我的頭頂部提示:內部查詢使用合適的窗口(?行之間無界前和電流)和劃分,並用標籤爲您的期間1to2,1to3,1to4等然後在您的標籤上旋轉。如果我晚點晚些時候,我會看看一個完整的解決方案。 –