首頁 > 資料庫 > mysql教程 > 如何將 PostgreSQL 表的欄位轉置為行?

如何將 PostgreSQL 表的欄位轉置為行?

Patricia Arquette
發布: 2025-01-05 15:53:46
原創
977 人瀏覽過

How Can I Transpose a PostgreSQL Table's Columns into Rows?

轉置表:列到行

問題陳述:

考慮具有以下格式的 PostgreSQL 輸出表:

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

目標是轉置表格,將列轉換為行,產生以下輸出:

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

解:

要轉接置表並將列轉換為行,您可以使用以下PostgreSQL函數:

SELECT
   unnest(array['Sl.no', 'username', 'Designation','salary']) AS "Columns",
   unnest(array[Sl.no, username, value3Count,salary]) AS "Values"
FROM view_name
ORDER BY "Columns"
登入後複製

解釋:

  • unnest(array['Sl.no', '使用者名稱', '職稱','工資'] )為原始表中的每一列建立一個新行,有效地建立列名稱。
  • unnest(array[Sl.no, username, value3Count,salary]) 為原始表中的每個值建立一行新行,對應於列名。
  • ORDER BY " Columns」確保行以列名排序。

此查詢將產生所需的轉置表,其中列現在位於行。

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

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