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 erreichen
GivenBy_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.

War es hilfreich?

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
scroll top