これは実際には、PostgreSQL でクロス集計の列を動的に生成するのフォローアップです。
明確にするために:可変数のキーを持つデータセットがある場合、AS句を生成できませんか?
例えば。最初に生徒 (Tom、Dick、Harry) を含むテスト (テスト日、生徒、結果) を含むテーブル
このクロス集計は次のようになります。
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.