Sql server Row to column pivot,已知列名未知的行数据值

时间:2014-03-10 10:22:25

标签: sql-server pivot

我在行到列枢轴上看到了一些帖子,这些帖子需要知道1)要旋转的行中的可能值,或者2)每个枢轴组的枢轴值的数量是相同的。这是我的情况。我有一张描述不动产的表:

PARCEL     LEGAL                ACREAGE
1001       PORTION NW1/4        0
1001       AND SW1/2 38-9       0
1001       ACC. TO PLAT #882    320.00
1002       PORTION 38-10        320.00

与Parcel的单个不同值对应的条目列表可以是1到5.最后一个条目始终具有该属性的实际面积,因此我不需要0。我希望它变成这样:

PARCEL     LEGAL01              LEGAL02           LEGAL03              LEGAL04         LEGAL05          ACRES
1001       PORTION NW1/4        AND SW1/2 38-9    ACC. TO PLAT #882    <NULL>           <NULL>          320
1002       PORTION 38-10        <null>             <null>               <null>         <null>            320        

非常感谢任何见解。

1 个答案:

答案 0 :(得分:0)

使用Row_number

select * 
from
(select parcel, legal, 
        SUM(acreage) over (partition by parcel) acres, 
        ROW_NUMBER() over (partition by parcel order by legal ) rn 
 from yourtable) src
pivot (max(legal) for rn in ([1],[2],[3],[4],[5])) p