Heim >Datenbank >MySQL-Tutorial >Wie kann man große Daten in MySQL in breite Daten umwandeln?

Wie kann man große Daten in MySQL in breite Daten umwandeln?

Linda Hamilton
Linda HamiltonOriginal
2024-12-20 19:38:13287Durchsuche

How to Reshape Tall Data to Wide Data in MySQL?

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:

  1. Erstellen Sie das Tabelle:Führen Sie die obige SELECT-Abfrage aus, um eine neue Tabelle mit dem gewünschten Breitformat zu erstellen.
  2. Werte eingeben:Die Abfrage füllt die Werte automatisch basierend auf der Aggregation aus.

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn