【问题标题】:How to pivot multiple column based on a single column如何基于单列旋转多列
【发布时间】:2018-01-08 12:59:59
【问题描述】:

您好,我有一个包含多列的表格。 我想在 1-12 之间将列名“Period”的列 x、y、z 等作为轴心。

我已经写好了

pivot(
  Sum([x]
  For [Period] in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12])
   ) as Pv1

这只给我一栏。

如果我想要不止一列。我将如何处理它?

【问题讨论】:

    标签: sql-server sql-server-2012 ssms


    【解决方案1】:

    在这种情况下使用多轴

    pivot(
      Sum([x]
      For [Period] in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12])
       ) as Pv1
    ,
    pivot(
      Sum([y]
      For [Period] in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12])
       ) as Pv2
    ,
    pivot(
      Sum([z]
      For [Period] in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12])
       ) as Pv3
    

    【讨论】:

    • 提供一些样本数据和期望的结果,这可以说胜过千言万语。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-05
    • 2021-07-17
    • 2022-01-23
    • 2019-01-02
    • 1970-01-01
    • 2021-10-09
    相关资源
    最近更新 更多