Umformen von Daten in MySQL: Von groß nach breit
Bei der Arbeit mit Daten in einer Datenbank ist es oft notwendig, die Daten aus einer Datenbank umzuformen vom langen, hohen Format in ein breiteres Format. Diese Konvertierung erleichtert die Analyse und Visualisierung der Daten auf kompaktere und aussagekräftigere Weise.
Beispiel:
Stellen Sie sich eine Tabelle mit Daten im Langformat vor:
| country | key | value | |---|---|---| | USA | President | Obama | | USA | Currency | Dollar | | China | President | Hu | | China | Currency | Yuan |
In diesem Format stellt jede Zeile ein einzelnes Attribut für ein Land dar. Um diese Daten in ein Breitformat zu konvertieren, erstellen wir eine neue Tabelle mit Spalten für jeden eindeutigen Schlüssel und füllen sie mit den entsprechenden Werten für jedes Land:
| country | President | Currency | |---|---|---| | USA | Obama | Dollar | | China | Hu | Yuan |
SQL-Konvertierung:
MySQL bietet die Möglichkeit, Daten mithilfe von Kreuztabellen oder Pivot-Tabellen umzuformen. Hier ist eine Beispielabfrage, die die gewünschte Breitformattabelle generiert:
SELECT country, MAX( IF( key='President', value, NULL ) ) AS President, MAX( IF( key='Currency', value, NULL ) ) AS Currency FROM table GROUP BY country;
Diese Abfrage verwendet die Aggregationsfunktion MAX(), um für jeden den Maximalwert (d. h. den Wert, der jedem eindeutigen Schlüssel zugeordnet ist) zu finden Land.
Schritte:
Fazit:
Verwendung Mit Kreuztabellen oder Pivot-Tabellen in MySQL ist es möglich, Daten problemlos von einem langen, hohen Format in ein breites Format umzuwandeln. Dies ist eine wertvolle Technik zur Datenanalyse und -visualisierung und kann mithilfe des bereitgestellten Codes problemlos in MySQL implementiert werden.
Das obige ist der detaillierte Inhalt vonWie kann man große Daten in MySQL in breite Daten umwandeln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!