Pivot-Tabellen in PostgreSQL für die mehrdimensionale Datenanalyse beherrschen
PostgreSQL bietet leistungsstarke Funktionen zum Zusammenfassen und Analysieren mehrdimensionaler Daten mithilfe von Pivot-Tabellen. Diese Technik wandelt komplexe Datensätze in leicht verständliche Formate um und liefert wertvolle Erkenntnisse.
Veranschaulichen wir dies mit einer Tabelle „Inserate“, die Spalten wie „Nachbarschaft“, „Schlafzimmer“ und „Preis“ enthält. Um den Durchschnittspreis für jede Schlafzimmeranzahl, kategorisiert nach Stadtteil, zu ermitteln, gehen Sie folgendermaßen vor:
Durchschnittspreise berechnen:
Verwenden Sie die Aggregatfunktion AVG()
, um den Durchschnittspreis für jede einzelne Kombination aus Nachbarschaft und Schlafzimmeranzahl zu berechnen:
<code class="language-sql">SELECT neighborhood, bedrooms, AVG(price) FROM listings GROUP BY 1, 2 ORDER BY 1, 2;</code>
Daten mit Kreuztabelle transformieren:
Nutzen Sie die Funktion crosstab()
(erfordert die Installation der Erweiterung tablefunc
). Diese Funktion dreht die Daten und legt Nachbarschaften als Zeilen und Schlafzimmeranzahlen als Spalten fest:
<code class="language-sql">SELECT * FROM crosstab( 'SELECT neighborhood, bedrooms, AVG(price)::INT FROM listings GROUP BY 1, 2 ORDER BY 1, 2;' , $$SELECT UNNEST('{0,1,2,3}'::INT[])$$ ) AS ct ("neighborhood" TEXT, "0" INT, "1" INT, "2" INT, "3" INT);</code>
Diese Schritte generieren effizient PostgreSQL-Pivot-Tabellen und erleichtern so datengesteuerte Entscheidungen und ein tieferes Verständnis Ihrer Daten.
Das obige ist der detaillierte Inhalt vonWie erstelle ich Pivot-Tabellen in PostgreSQL, um mehrdimensionale Daten zusammenzufassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!