Konvertiert Spalten in Zeilen in SQL

9

Ich muss eine Abfrage schreiben, die Zeilen aufnimmt und in Spalten konvertiert - hier ist meine Tabelle:

%Vor%

Dies ist die Ausgabe, die ich produzieren möchte:

%Vor%

Der Maximalwert der Anzahl für jede ID ist 4. Ich verwende Oracle 9i.

    
sam 28.07.2010, 18:05
quelle

4 Antworten

2

Hier ist noch eine, mit der Sie vielleicht etwas Glück haben könnten. Ich mag @ ThinkJet's aber nicht sicher wieviel Dekodierungskosten sind (ob mehr oder weniger als das unten.

%Vor%     
dave 03.08.2010 16:16
quelle
1

Sieh dir dieses Beispiel an, das gleiche Prinzip wie in @Mike M. Antwort, aber mit wahrer Oracle-Erkenntnis:

%Vor%     
ThinkJet 29.07.2010 10:52
quelle
1

Ich weiß, dass Sie nach einer Oracle 9i-Lösung suchen, aber Oracle 11 führt PIVOT ein, mit dem Sie Abfragen ausführen können wie:

%Vor%

was ergibt:

%Vor%

Nicht ganz das, wonach du gesucht hast, aber in vielen Situationen extrem nützlich ... und fast das Upgrade für PIVOT und UNPIVOT allein wert

BEARBEITEN

Geändert, um fname und lname in separate Spalten zu setzen

    
Mark Baker 29.07.2010 09:39
quelle
-1

Suchen Sie das?

Ссылка

    
kbrimington 28.07.2010 18:09
quelle

Tags und Links