首頁 >資料庫 >mysql教程 >如何使用 SQL 將 MySQL 資料從窄格式重塑為寬格式?

如何使用 SQL 將 MySQL 資料從窄格式重塑為寬格式?

Barbara Streisand
Barbara Streisand原創
2024-12-20 14:18:14135瀏覽

How to Reshape MySQL Data from Narrow to Wide Format Using SQL?

將MySQL 資料從窄格式重塑為寬格式

簡介

資料通常有多種格式,有時資料通常有多種格式,有必要將其從一種格式轉換為另一種格式。一種常見的轉換是從窄/高格式到寬格式,其中窄表中的多列變成寬表中的多行。本文探討如何在 MySQL 中實現這種轉換。

建立寬表結構

要建立寬格式表,先從窄表中辨識所有唯一鍵桌子。這可以使用以下查詢來實現:

select distinct key from table;

此查詢的結果將提供窄表中所有唯一鍵的清單。這些鍵將成為寬格式表的列名稱。例如,如果不同的鍵是['President', 'Currency'],則寬格式表將具有以下結構:

country, President, Currency

填充寬表資料

要填入寬格式表的值,請使用帶有聚合函數(例如MAX()或GROUP_CONCAT():

SELECT country, 
       MAX( IF( key='President', value, NULL ) ) AS President,
       MAX( IF( key='Currency', value, NULL ) ) AS Currency
FROM table 
GROUP BY country;

在此範例中,MAX()聚合函數用於檢索每個國家/地區內每個鍵的最大值。 🎜>

建立寬格式表的另一種方法是使用交叉表或資料透視表。運算符等工具來實現,它允許您指定要使用的列和聚合函數。交叉表/資料透視表可以在MySQL 中輕鬆實現寬格式。

以上是如何使用 SQL 將 MySQL 資料從窄格式重塑為寬格式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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