如何获取Pivot表而不在PostgreSQL 9.3中的外括号中指定内部sql列

时间:2014-05-13 08:27:43

标签: postgresql postgresql-9.3

目前我正在使用PostgreSQL Plus Advance Server 9.3,我有一个表格如下: -

   Section    Status    ct
    A          Active    1
    A          Inactive  2
    B          Active    4
    B          Inactive  5

我使用以下查询得到了数据透视表: -

      SELECT * FROM crosstab(
               'SELECT section, status, ct
                FROM   t
                ORDER  BY 1,2',$$VALUES ('Active'), ('Inactive')$$) 
        AS ct ("Section" text, "Active" int, "Inactive" int);

        Section    Active    Inactive
        A          1         2
        B          4         5

所以我的问题是,如果不在"Section" text中指定输入sql查询列名(即ct()),就可以得到相同的输出。感谢。

我的意思是我希望使用这样的查询输出相同的输出:

SELECT * FROM crosstab(
           'SELECT section, status, ct
            FROM   t
            ORDER  BY 1,2',$$VALUES ('Active'), ('Inactive')$$) 
    AS ct ("Active" int, "Inactive" int);

0 个答案:

没有答案