2017-02-04 46 views
1

我有一個表,其中顯示類似這樣的透視表

Data in Table

我這種格式需要數據數據

   GIN  APINV  AR Rec  Requisitions 
Total   8   11   77 
Pending  7   6   77 
New   1   77   0 
Approved  0   5   0 
Rejected  1   0   0 

等等...

我已經知道的是我必須使用PIVOT,但我只使用一列與PIVOT一起工作。的CROSS APPLYPIVOT

+0

固定列在您的預期產出的數量,或者他們可以改變/未知? –

+0

@TimBiegeleisen請點擊此鏈接,它也在工作。 http://stackoverflow.com/a/41712456/4874225 –

回答

0

組合應該做的:

select * 
from (
    select t.appname, x.status, x.val 
    from your_table t 
    cross apply (
     values 
      ('Total', t.total), 
      ('Pending', t.pending), 
      ('New', t.New), 
      ('Approved', t.Approved), 
      ('Rejected', t.Rejected) 
    ) x (status, val) 
) t pivot (
    sum(val) 
    for appname in (
     [GIN],[APINV],.... 
    ) 
);