Heim  >  Artikel  >  Datenbank  >  So transponieren Sie Zeilen und Spalten in Oracle

So transponieren Sie Zeilen und Spalten in Oracle

WBOY
WBOYOriginal
2022-01-25 10:55:555962Durchsuche

So transponieren Sie Oracle-Zeilen und -Spalten: 1. Verwenden Sie die Funktion „pivot()“, um Zeilen in Spalten zu übertragen. Die Syntax lautet „pivot (Aggregationsfunktion für Spaltennamen in (Typ))“ 2. Verwenden Sie die Funktion „unpivot()“; Funktion zum Übertragen von Spalten in Zeilen, und die Syntax lautet „unpivot(Spaltenname für Spaltennamen in(Typ))“.

So transponieren Sie Zeilen und Spalten in Oracle

Die Betriebsumgebung dieses Tutorials: Windows 10-System, Oracle 11g-Version, Dell G3-Computer.

So transponieren Sie Zeilen und Spalten in Oracle

Um Zeilen in Spalten zu übertragen, verwenden Sie die Aggregatfunktion sum max und kombinieren Sie sie dann mit der Schreibweise when then else end Anweisung, und um Spalten zu übertragen, verwenden Sie Union oder Union All. Dies ist tatsächlich etwas mühsam, und in Oracle-Daten wird eine solche Funktion speziell zur Realisierung der Zeilen- und Spaltentranspositionsfunktion bereitgestellt.

Sie können auch allgemeines SQL verwenden, um die Zeilen- und Spaltentransposition zu implementieren. Oracle bietet jedoch spezielle Funktionen für die Zeilen- und Spaltentransposition, dh die Verwendung der Pivot-Funktion und der Unpivot-Funktion, die im Folgenden vorgestellt werden.

1. Zeile zu Spalte schwenken

Oracle-Datenbank bietet die Pivot-Funktion, um die Zeilen-zu-Spalte-Funktion zu realisieren. SQL kann auch so geschrieben werden:

SELECT NAME AS
	姓名,
	"'语文'",
	"'数学'",
	"'英语'" FROM
	stu_score pivot ( max( score ) FOR SUBJECT IN ( '语文', '数学', '英语' ) );

Die Abfrageergebnisse sind wie folgt:

So transponieren Sie Zeilen und Spalten in Oracle
2. Unpivot-Funktion, um die Spalte-zu-Zeile-Funktion zu implementieren, um den gleichen Effekt zu erzielen: rreee

Die Abfrageergebnisse lauten wie folgt:

Empfohlenes Tutorial: „So transponieren Sie Zeilen und Spalten in Oracle Oracle Video Tutorial

Das obige ist der detaillierte Inhalt vonSo transponieren Sie Zeilen und Spalten in Oracle. 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