簡介
資料通常有多種格式,有時資料通常有多種格式,有必要將其從一種格式轉換為另一種格式。一種常見的轉換是從窄/高格式到寬格式,其中窄表中的多列變成寬表中的多行。本文探討如何在 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中文網其他相關文章!