Konvertieren von Zeilen in Spalten mithilfe von 'Pivot' in mssql, wenn Spalten den String-Datentyp haben

8

Ich muss wissen, ob 'pivot' in MS SQL zum Konvertieren von Zeilen in Spalten verwendet werden kann, wenn keine Aggregatfunktion verwendet werden soll. Ich sah viele Beispiele nur mit Aggregatfunktion. meine Felder sind Zeichenkettendatentyp und ich muss diese Zeilendaten in Spaltendaten umwandeln. Deshalb schrieb ich diese Frage. Ich tat es gerade mit "Fall". Kann mir jemand helfen ...... Danke im Voraus.

    
Sivajith 11.06.2012, 08:21
quelle

3 Antworten

13

Sie können einen PIVOT verwenden, um diesen Vorgang auszuführen . Wenn Sie PIVOT ausführen, können Sie dies auf zwei Arten tun: mit einem statischen Pivot, in dem Sie die zu transformierenden Zeilen codieren, oder mit einem dynamischen Pivot, das zur Laufzeit die Liste der Spalten erstellt:

Statischer Pivot (siehe SQL Geige mit einer Demo ):

%Vor%

Dynamischer Pivot:

%Vor%

Beide werden Ihnen die gleichen Ergebnisse geben

    
Taryn 11.06.2012, 11:58
quelle
1

Beispielformat

Empid-Lohncodebetrag
1 Basis 1000
1 TA 500
1 DA 500
2 Basic 1500
2 TA 750
2 DA 750

empid basic TA DA
1 1000 500 500
2 1500 750 750

DIE ANTWORT, DAS ICH ERHALTE, IST

%Vor%
    
Sivajith 11.06.2012 11:37
quelle
0

Versuchen Sie Folgendes:

%Vor%     
V. P. Verma 11.06.2012 11:52
quelle

Tags und Links