目前我正在使用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);