2014-10-20 78 views
0
Employee Entity  Payor   Location PROC_QTY Work_RVUs CHARGES PAYMENTS REFUNDS UPL_DISTRIBUTION 
No Employee 29040100 BCBS - FSC1  Inpatient 679.5  3.45  84423.5 14514.85 0    0 

我需要的方式對上述轉換爲以下SQL Server Management Studio中:移調(也許)行至列

Employee Entity  Payor  Location Account  Amount 
No Employee 29040100 BCBS - FSC1 Inpatient PROC_QTY 679.5 

No Employee 29040100 BCBS - FSC1 Inpatient Work_RVUs 3.45 

No Employee 29040100 BCBS - FSC1 Inpatient CHARGES  84423.5 

No Employee 29040100 BCBS - FSC1 Inpatient PAYMENTS 14514.85 

No Employee 29040100 BCBS - FSC1 Inpatient REFUNDS  0 

No Employee 29040100 BCBS - FSC1 Inpatient UPL_DISTRIBUTION 0 

回答

2

退房unpivot

逆轉置轉換

Unpivot轉換通過展開值將非標準化數據集變成更規範化的版本從單個記錄中的多個列轉換爲單個列中具有相同值的多個記錄。

下面是一個示例(SQLFiddle):

select 
p.* 
from MyTable as t 
unpivot 
(
    Amount for Account in 
    (
     PROC_QTY 
     ,Work_RVUs 
     ,CHARGES 
     ,PAYMENTS 
     ,REFUNDS 
     ,UPL_DISTRIBUTION 
    ) 
) as p 

記下我指定Amount(值)和Account(列名)。

+1

謝謝!完美工作。 – MikeW 2014-10-20 20:27:37