首頁 > 資料庫 > mysql教程 > 如何在 PostgreSQL 中轉置表:將列轉換為行?

如何在 PostgreSQL 中轉置表:將列轉換為行?

Barbara Streisand
發布: 2025-01-03 20:26:41
原創
946 人瀏覽過

How to Transpose a Table in PostgreSQL: Converting Columns to Rows?

轉置表格:將列轉換為行

使用表格資料時,轉置表格(將其列轉換為行)非常有用。這可以促進數據視覺化、分析以及與其他數據集的整合。

考慮以下PostgreSQL 表,其中包含員工資訊:

Sl.no    username    Designation    salary
1        A           XYZ            10000
2        B           RTS            50000
3        C           QWE            20000
4        D           HGD            34343
登入後複製

要轉置此表,我們可以使用以下內容步驟:

  1. 取消巢狀欄位名稱:
    使用unnest()函數,我們可以將列名稱提取到單獨的行中:

    unnest(array['Sl.no', 'username', 'Designation','salary']) AS "Columns"
    登入後複製
  2. 取消資料值的巢狀:
    類似地,我們可以將每一行的資料值提取到單獨的rows:

    unnest(array[Sl.no, username, value3Count,salary]) AS "Values"
    登入後複製
  3. 加入提取的清單:
    最後,我們可以加入提取的列名和資料值來重新建立轉置表:

    SELECT
       "Columns",
       "Values"
    FROM transposed_table
    ORDER BY "Columns"
    登入後複製

此查詢的結果將be:

Sl.no            1       2        3       4
 Username        A       B        C       D
 Designation     XYZ     RTS      QWE     HGD
 Salary          10000   50000    20000   34343
登入後複製

此轉置表現在將員工資訊依行排列,原始列名稱作為第一列。這種格式可以更方便地進行某些操作,例如資料視覺化或比較不同類別的員工屬性。

以上是如何在 PostgreSQL 中轉置表:將列轉換為行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板