So wandeln Sie Zeilen in Spalten in MySQL um
Pivot-Tabellen sind eine gängige Datentransformation, die verwendet wird, um Daten in ein einfacheres Format umzuordnen lesen und analysieren. In diesem Szenario möchten wir eine Ergebnismenge mit mehreren Zeilen in eine Tabelle mit Spalten für jeden einzelnen Typwert und Zeilen für jede eindeutige ID- und E-Mail-Kombination umwandeln.
Um dies in MySQL zu erreichen, können wir die verwenden Folgende Abfrage:
SELECT ID, MAX(CASE Type WHEN 202 THEN Degignation END) AS `202` MAX(CASE Type WHEN 234 THEN Degignation END) AS `234` MAX(CASE Type WHEN 239 THEN Degignation END) AS `239` Email FROM mytable GROUP BY ID, Email
Diese Abfrage verwendet die CASE-Anweisung, um den Deignation-Wert für jede Zeile basierend auf ihrem Type-Wert bedingt festzulegen. Die Aggregatfunktion MAX() gibt dann den maximalen Designationswert für jeden Typ innerhalb jeder Gruppe von ID und E-Mail zurück.
Hinweis: Es ist wichtig, den Namen der Platzhaltertabelle (mytable) durch zu ersetzen tatsächlicher Tabellenname, der Ihre Daten enthält. Darüber hinaus müssen Sie alle unterschiedlichen Typwerte im Voraus kennen, da SQL das dynamische Hinzufügen von Spalten während der Abfrageausführung nicht zulässt.
Das obige ist der detaillierte Inhalt vonWie kann ich Zeilen in MySQL mithilfe von CASE- und Aggregatfunktionen in Spalten umwandeln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!