1
我有一個程序,根據傳遞給它的參數在下面生成樞軸(見輸出)。我怎樣才能調用一個pivoted過程作爲一個sql查詢?
我希望能夠插入列之間的年份,因爲我在預期的輸出中顯示,將添加100到這個新列中的pivoted值。
有沒有辦法調用一個數據透視表作爲查詢,以便我可以通過選擇查詢添加這些計算?還是有更簡單的方法?
create table t1
(
date int,
unita int,
unitb int,
unitc int
)
insert into t1 values (2010, 335, 52, 540)
insert into t1 values (2011, 384, 70, 556)
insert into t1 values (2012, 145, 54, 345)
select *
from
(
select date, value, unit
from
(
select *
from t1
) x
unpivot ([value] for unit in ([unita], [unitb], [unitc])) u
) a
pivot
(
sum(value)
for date in ([2010], [2011], [2012])
) p
OUTPUT:
unit 2010 2011 2012
----------------------
unita 335 384 145
unitb 52 70 54
unitc 540 556 345
預期輸出:
unit 2010 2010a 2011 2011a 2012
-----------------------------------
unita 335 435 384 485 145
unitb 52 150 70 170 54
unitc 540 640 556 656 345
什麼決定你需要添加多少列? – DhruvJoshi