Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server Sql server行到列透视,已知列名未知行数据值_Sql Server_Pivot - Fatal编程技术网

Sql server Sql server行到列透视,已知列名未知行数据值

Sql server Sql server行到列透视,已知列名未知行数据值,sql-server,pivot,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-

我见过一些关于行到列数据透视的帖子,它们要求知道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
对应于地块单个不同值的条目列表可以是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        
地块法律01法律02法律03法律04法律05英亩
1001部分NW1/4和SW1/2 38-9符合平面882 320
1002第38-10部分320

非常感谢您的任何见解。

使用
行号

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