【问题标题】:T-SQL help with multiple pivot / unpivotT-SQL 帮助多个透视/反透视
【发布时间】:2011-05-23 00:48:57
【问题描述】:

我不确定什么是最好的 approch pivot 或 unpivot。我在一个表中有以下列。


group1 | group2 | group3 | amtA1 | amtA2 | amtB1 | amtB2 | amtC1 | amtC1

我需要像这样的产品表


group1
X | amtA1  | amtB1  | amtC1
Y | amtA2  | amtB2  | amtC2

group2
X | amtA1  | amtB1  | amtC1
Y | amtA2  | amtB2  | amtC2

group3
X | amtA1  | amtB1  | amtC1
Y | amtA2  | amtB2  | amtC2

我尽我所能,但无法弄清楚。任何帮助将不胜感激。

【问题讨论】:

    标签: tsql ssrs-2008 pivot reporting-services ssrs-grouping


    【解决方案1】:

    试试

    SELECT group1 As Group, "X" as ColType, amtA1 as ColA,  amtB1 as ColB, amtC1 as ColC
    UNION
    SELECT group1, "Y", amtA2,  amtB2, amtC2
    UNION 
    SELECT group2, "X", amtA1,  amtB1, amtC1
    UNION 
    SELECT group2, "Y", amtA2,  amtB2, amtC2
    UNION 
    SELECT group3, "X", amtA1,  amtB1, amtC1
    UNION 
    SELECT group3, "Y", amtA2,  amtB2, amtC2
    

    您现在可以轻松地根据“组”列进行分组。

    虽然我会与您组织中的某个人就表格规范化进行“讨论”。

    【讨论】:

    • 感谢您的回复。我发现它现在很容易根据组行和列进行分组。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-29
    • 2016-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多