SQL-Abfrage zu bekommen Matrix Berichterstattung
-
11-09-2019 - |
Frage
Meine "FeedbackSummary" Tabellenstruktur ist
GivenBy varchar(50)
GivenTo varchar(50)
Points decimal(15, 2)
Beispieldaten
Alice Janet 4.50
Alice Bruce 3.50
Bruce Alice 2.87
Bruce Janet 4.75
Janet Alice 5.45
Janet Bruce 3.78
Was ich versuche
zu erreichenGivenBy_GivenTo Alice Bruce Janet
Alice NULL 3.50 4.50
Bruce 2.87 NULL 4.75
Janet 5.45 3.78 NULL
Plattform: SQL Server 2005 & 2008
Wie dies mit Pivot oder andere Techniken durchgeführt werden kann. Kann dies leicht mit Hilfe von SQL Reporting Service erreicht werden?
Vielen Dank im Voraus.
Lösung
Am besten ist SSRS zu verwenden. Legen Sie eine Matrix dort mit einer Spalte in den Zeilen und einer auf den Säulen. Sie können in einer Abfrage (die PIVOT-Option) schwenken, aber das erlaubt keine Flexibilität im Reporting.
Rob
Andere Tipps
SELECT t.givenby,
SUM(CASE WHEN t.givento = 'Alice' THEN t.points ELSE NULL END) 'Alice',
SUM(CASE WHEN t.givento = 'Bruce' THEN t.points ELSE NULL END) 'Bruce',
SUM(CASE WHEN t.givento = 'Janet' THEN t.points ELSE NULL END) 'Janet'
FROM TABLE t
GROUP BY t.givenby
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow