Werte aus verschiedenen Zeilen zusammenfassen

02/02/2010 - 14:34 von Kurt Tagliati | Report spam
Ich habe eine Tabelle die (vereinfacht) so aussieht:

User_ID | Jahr | Monat | Bezeichnung | Wert
1 | 2009 | 1 | B1 | 1000
1 | 2009 | 1 | B2 | 2000
1 | 2009 | 2 | B1 | 3000
1 | 2009 | 2 | B2 | 4000
1 | 2009 | 3 | B1 | 5000
1 | 2009 | 3 | B2 | 6000

Wie kann ich erreichen, dass eine Abfrage folgendes ergibt?

User_ID | Jahr | Monat | B1_Wert | B2_Wert
1 | 2009 | 1 | 1000 | 2000
1 | 2009 | 2 | 3000 | 4000
1 | 2009 | 3 | 5000 | 6000

Wàre für ein kleines Bsp. sehr dankbar.
Kurt
 

Lesen sie die antworten

#1 Stefan Hoffmann
02/02/2010 - 14:49 | Warnen spam
hallo Kurt,

On 02.02.2010 14:34, Kurt Tagliati wrote:
Ich habe eine Tabelle die (vereinfacht) so aussieht:

User_ID | Jahr | Monat | Bezeichnung | Wert
1 | 2009 | 1 | B1 | 1000
1 | 2009 | 1 | B2 | 2000
1 | 2009 | 2 | B1 | 3000
1 | 2009 | 2 | B2 | 4000
1 | 2009 | 3 | B1 | 5000
1 | 2009 | 3 | B2 | 6000

Wie kann ich erreichen, dass eine Abfrage folgendes ergibt?

User_ID | Jahr | Monat | B1_Wert | B2_Wert
1 | 2009 | 1 | 1000 | 2000
1 | 2009 | 2 | 3000 | 4000
1 | 2009 | 3 | 5000 | 6000



Mittels PIVOT

http://technet.microsoft.com/en-us/...77410.aspx

Ungefàhr so:

SELECT [Source].[User_ID],
[Source].[Jahr],
[Source].[Monat],
[Pivot].[B1] AS [B1_Wert],
[Pivot].[B2] AS [B2_Wert]
FROM Tabelle AS [Source]
PIVOT ( SUM([Wert]) FOR [Bezeichnung] IN ( [B1], [B2] ) ) AS [Pivot];


mfG

Ähnliche fragen