SQL Server 2 Zeilen in 1 zusammenführen

8

Ist es möglich, in SSRS 2008 zwei Zeilen zu einer einzigen Zeile zusammenzufassen? Jeder Teil hat einen Eintrag für jede Seite

%Vor%

Gewünschtes Ergebnis

%Vor%

Danke

    
Spacko 26.03.2013, 10:51
quelle

3 Antworten

10

Wenn Sie wissen, dass sich Ihre Site-Nummern / Namen nicht dynamisch ändern, können Sie CASE WHEN : s

verwenden %Vor%

Durch die Gruppierung haben wir NULL-Werte eliminiert ...

Hier verlinken Sie mit dem SQL Fiddle Beispiel

    
Fabio 26.03.2013, 11:09
quelle
1

Diese Art der Datenumwandlung wird als PIVOT . Ab SQL Server 2005 gibt es eine Funktion, die die Daten für Sie in Spalten transponieren kann.

Wenn Sie eine bekannte Anzahl von Site -Werten haben, die Sie in Spalten umwandeln möchten, können Sie die Abfrage fest codieren:

%Vor%

Siehe SQL Geige mit Demo

Wenn Sie jedoch eine unbekannte Anzahl von Werten haben, müssen Sie dynamisches SQL verwenden, um die Spaltenliste zu generieren, die in der Abfrage verwendet werden soll:

%Vor%

Siehe SQL Geige mit Demo . Beide geben das Ergebnis:

%Vor%     
Taryn 26.03.2013 11:21
quelle
0

In SSRS müssen Sie MATRIX report verwenden, um Zeilen in Spalten zu konvertieren, ohne PIVOT operator

zu verwenden

Angenommen, Sie haben eine Tabelle SSRSPivot

%Vor%

Die Daten haben das folgende Format

%Vor%

Erstellen Sie einen neuen leeren Bericht und benennen Sie ihn als PIVOT . Erstellen Sie eine Datenquelle, und schreiben Sie die Abfrage im Dataset

%Vor%

Ziehen Sie einen matrix aus der Toolbox auf den SSRS-Designer. Für Rows wählen Sie PartNumber .Für Spalten wählen Sie Site und für die Daten Sum(Cost)

Wenn Sie den obigen Schritt ausführen, erhalten Sie die Details row und column wie die unten stehende

Das finale Ergebnis wird aussehen wie

    
praveen 26.03.2013 12:05
quelle