sql >> データベース >  >> RDS >> Sqlserver

SQLServerで複数の列をピボットする方法

    次のピボットステートメントの列の名前を変更する必要があります。

    のように
    SELECT
    *
    FROM
    (
      SELECT 
       Branch,
       Category,
       Category+'1' As Category1,
       Category+'2' As Category2,
       Sales, 
       Stock, 
       Target
      FROM TblPivot
     ) AS P
    
     -- For Sales
     PIVOT
     (
       SUM(Sales) FOR Category IN ([Panel], [AC], [Ref])
     ) AS pv1
    
     -- For Stock
     PIVOT
     (
       SUM(Stock) FOR Category1 IN ([Panel1], [AC1], [Ref1])
     ) AS pv2
    
     -- For Target
     PIVOT
     (
       SUM(Target) FOR Category2 IN ([Panel2], [AC2], [Ref2])
     ) AS pv3
     GO
    

    あなたは今行く準備ができています....

    pv3の集計を使用して、必要な列で合計およびグループ化できます。



    1. C#.NETmd5とは異なるTSQLmd5ハッシュ

    2. SQL ServerStandardEditionの高可用性の将来

    3. SQLCOALESCE関数の実用的な使用

    4. SQLのピアソン相関係数式