这实际上是对在 PostgreSQL 中为交叉表动态生成列的后续操作
需要明确的是:如果我有一个包含可变数量键的数据集,我无法生成 AS 子句?
例如。一张带有测试(测试日期、学生、结果)的表格,最初是学生(汤姆、迪克、哈里)
交叉表将是:
select * from crosstab(
'select testdate, pupil, result from tests)',
'select distinct pupil from tests order by pupil')
as ct
(
"testdate" text,
"Dick" text,
"Harry" text,
"Tom" text)
莎莉一加入就会失败?有类似的东西
ERROR: invalid return type
DETAIL: Query-specified return tuple has 4 columns but crosstab returns 5.