繁体   English   中英

需要转台的解决方案

[英]Need solution for transpose of table

我有一个名为Sample的表,看起来像。

在此处输入图片说明

我想要以下输出 在此处输入图片说明

为此,我建立了以下查询:

SELECT YEAR/MONTH, 1L,3L,4L,6L,8L
    FROM (
    SELECT PANEL, LAYERCOUNT, MONTHS
    FROM Sample) up
    PIVOT (SUM(Count) FOR CountOFL IN (1L,3L,4L,6L,8L)) AS pvt
    ORDER BY YEAR/MONTH

但是它会在“ 1”附近给出错误的不正确语法。

在此处输入图片说明

对于您提供的表结构,此查询将返回CountOFL列上的数据透视表:

SELECT YEARMONTH, [1L],[3L],[4L],[6L],[8L]
FROM Sample
PIVOT (SUM(RecordCount) FOR CountOFL IN ([1L],[3L],[4L],[6L],[8L])) AS pvt
ORDER BY YEARMONTH

结果:

YEARMONTH                        1L          3L          4L          6L          8L
-------------------------------- ----------- ----------- ----------- ----------- -----------
Dec2011                          2           NULL        NULL        NULL        NULL
Jan2011                          NULL        4           NULL        NULL        NULL
Jul2012                          2           NULL        5           NULL        NULL
Jun2011                          NULL        NULL        NULL        NULL        1
Jun2012                          2           NULL        NULL        1           NULL
May2011                          NULL        5           NULL        NULL        NULL
Sep2012                          NULL        1           NULL        NULL        NULL

因此,您需要将PIVOTed列的值括在方括号中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM