ich habe:SQL Server 2008 R2/SUM Kosten Kosten Zentrum
ReNr |Hours|Costs|Cost Center|Change
12345 |1 |122,5|4711 |A
12345 |2 |245 |4711 |B
12345 |1 |122,5|4712 |C
12345 |1 |122,5|4712 |D
12345 |2 |245 |4712 |E
Ich benötige die Summe der Kosten nach Kostenstelle, etwa wie folgt:
ReNr |Hours|Costs|Cost Center
12345 |3 |367,5|4711
12345 |4 |490 |4712
Ich versuche, eine zu verwenden, PIVOT:
SELECT [ReNr]
,ISNULL([Hours], 0) AS [Hours]
,ISNULL([Cst2501], 0) AS [Cst2501]
,ISNULL([Cst2510], 0) AS [Cst2510]
,ISNULL([Cst2705], 0) AS [Cst2705]
,ISNULL([Cst5010], 0) AS [Cst5010]
,ISNULL([Cst7080], 0) AS [Cst7080]
,ISNULL([Cst7120], 0) AS [Cst7120]
,ISNULL([Cst7301], 0) AS [Cst7301]
FROM
(
SELECT [ReNr]
,[Hours]
,[Costs]
,[CostCenter]
FROM [dbo].[Abrechnungen]
) src
PIVOT
(
SUM([Costs])
FOR [CostCenter] IN ([Cst2501], [Cst2510], [Cst2705], [Cst5010], [Cst7080], [Cst7120], [Cst7301])
) piv;
Aber es funktioniert nicht. Ich bekomme 1 "nvarchar to int" -Fehler, während es kein NVARCHAR als Feld gibt! Stunden und Kosten sind FLOAT. Alle anderen sind INT.
Und ich bekomme einen Fehler wie (mein Studio ist in Englisch installiert, aber der Fehler Msg ist Deutsch) "In Pivot-Operator ist der Wert falsch".
Bitte geben Sie mir einige Hinweise ;-)
THX.
Greetz Vegeta
Und ein anderes Mal denke ich zu kompliziert ;-) Das ist was ich brauche. DANKE :-) –