Heim > Datenbank > MySQL-Tutorial > Wie verwende ich den PIVOT-Operator von Oracle SQL für die Datentransformation?

Wie verwende ich den PIVOT-Operator von Oracle SQL für die Datentransformation?

Linda Hamilton
Freigeben: 2025-01-23 07:26:09
Original
863 Leute haben es durchsucht

How to Use Oracle SQL's PIVOT Operator for Data Transformation?

Pivot-Abfrage in Oracle SQL

Pivot-Abfragen ermöglichen Ihnen die Konvertierung von Daten vom herkömmlichen Spaltenformat in das Zeilenformat und erleichtern so die Analyse und den Vergleich von Daten über verschiedene Kategorien hinweg.

Pivot-Abfrage erstellen

Um Pivot-Abfragen in Oracle SQL zu erstellen, können Sie den PIVOT-Operator verwenden. Für diesen Operator müssen Sie die Daten angeben, die Sie Pivotieren möchten, eine Aggregationsfunktion (z. B. SUM, COUNT oder AVG) und die Kategoriewerte angeben, um die herum Sie Pivotieren möchten.

Beispieldaten und Abfragen

Betrachten Sie die folgenden Beispieldaten aus der Tabelle tq84_pivot:

<code>MONTH | VALUE
-------+-----------
1      | 100
2      | 200
3      | 300
4      | 400
5      | 500
6      | 600</code>
Nach dem Login kopieren

Um Ihre Daten nach Monatskategorien zu schwenken und die Spalte VALUE zu summieren, können Sie die folgende Abfrage verwenden:

SELECT
  *
FROM
  tq84_pivot
PIVOT (
  SUM(VALUE) AS sum_value
  FOR MONTH IN (1 AS MONTH_JAN, 2 AS MONTH_FEB, 3 AS MONTH_MAR, 4 AS MONTH_APR, 5 AS MONTH_MAI, 6 AS MONTH_JUN)
);
Nach dem Login kopieren

Ergebnisse ausgeben

Diese Abfrage gibt die folgende Ausgabe zurück:

<code>MONTH_JAN | MONTH_FEB | MONTH_MAR | MONTH_APR | MONTH_MAI | MONTH_JUN
--------+--------+--------+--------+--------+--------
100      | 200      | 300      | 400      | 500      | 600</code>
Nach dem Login kopieren

Oracle 11g und höher

Oracle 11g führt den PIVOT-Operator ein, mit dem Sie Pivot-Abfragen präziser erstellen können. Für dieselben Beispieldaten kann die Abfrage wie folgt vereinfacht werden:

SELECT
  MONTH_JAN, MONTH_FEB, MONTH_MAR, MONTH_APR, MONTH_MAI, MONTH_JUN
FROM
  tq84_pivot
PIVOT (
  SUM(VALUE)
  FOR MONTH IN (1 AS MONTH_JAN, 2 AS MONTH_FEB, 3 AS MONTH_MAR, 4 AS MONTH_APR, 5 AS MONTH_MAI, 6 AS MONTH_JUN)
);
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie verwende ich den PIVOT-Operator von Oracle SQL für die Datentransformation?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage