多次元データ分析のための PostgreSQL のピボット テーブルのマスター
PostgreSQL は、ピボット テーブルを通じて多次元データを要約および分析するための強力な機能を提供します。 この手法は、複雑なデータセットを理解しやすい形式に変換し、貴重な洞察を明らかにします。
「近所」、「寝室」、「価格」などの列を含む「リスト」テーブルで説明してみましょう。 近隣別に分類された寝室数ごとの平均価格を決定するには、次の手順に従います。
平均価格の計算:
AVG()
集計関数を使用して、近隣と寝室数の一意の組み合わせごとに平均価格を計算します。
<code class="language-sql">SELECT neighborhood, bedrooms, AVG(price) FROM listings GROUP BY 1, 2 ORDER BY 1, 2;</code>
クロス集計を使用したデータの変換:
crosstab()
機能を利用します (tablefunc
拡張機能のインストールが必要です)。この関数はデータをピボットし、近所を行として設定し、寝室の数を列として設定します。
<code class="language-sql">SELECT * FROM crosstab( 'SELECT neighborhood, bedrooms, AVG(price)::INT FROM listings GROUP BY 1, 2 ORDER BY 1, 2;' , $$SELECT UNNEST('{0,1,2,3}'::INT[])$$ ) AS ct ("neighborhood" TEXT, "0" INT, "1" INT, "2" INT, "3" INT);</code>
これらの手順により、PostgreSQL ピボット テーブルが効率的に生成され、データに基づいた意思決定が容易になり、データの理解を深めることができます。
以上がPostgreSQL でピボット テーブルを作成して多次元データを要約する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。