首頁 >資料庫 >mysql教程 >如何在 PostgreSQL 中建立資料透視表來匯總多維資料?

如何在 PostgreSQL 中建立資料透視表來匯總多維資料?

Linda Hamilton
Linda Hamilton原創
2025-01-13 07:38:43983瀏覽

How to Create Pivot Tables in PostgreSQL to Summarize Multidimensional Data?

掌握 PostgreSQL 中的資料透視表以進行多維資料分析

PostgreSQL 提供了透過資料透視表匯總和分析多維資料的強大功能。 該技術將複雜的數據集轉換為易於理解的格式,揭示有價值的見解。

讓我們用一個包含「鄰居」、「臥室」和「價格」等欄位的「清單」表來說明。 要確定按社區分類的每間臥室的平均價格,請按照以下步驟操作:

  1. 計算平均價格:

    使用 AVG() 聚合函數來計算街區和臥室數量的每個獨特組合的平均價格:

    <code class="language-sql">SELECT neighborhood, bedrooms, AVG(price)
    FROM listings
    GROUP BY 1, 2
    ORDER BY 1, 2;</code>
  2. 使用交叉表轉換資料:

    利用 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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn