SUM() OVER (PARTITION BY XYZ, ZXCX)
JimmyConway
Gesendet: 13.02.13 08:52
Betreff: SUM() OVER (PARTITION BY XYZ, ZXCX)


Hallo zusammen,

ich bin am verzweifeln.

Habe eine Rechnung per T-SQL via SQL Server 2008 und MS Reporting Services erstellt.

Zuerst habe ich mit einzelnen Werten gearbeit, diese per CONVERT(DECIMAL(18,2),xyzu) immer
direkt in dem Format belassen, danach im Reporting alles gruppiert und
trotzdem bekam ich auf der Rechnung sehr oft Differenzen um 1 Cent in den jeweiligen Gruppierungen (Oben Einzelposten, Unten Zwischensumme pro Markt und unten dann Gesamtbetrag, Netto, etc.).

Dann habe ich alle Summen per SUM(Zeit) OVER (PARTITION BY yxxy) * (den jeweiligen Betrag)
einzeln berechnet und auch das führte nicht zum Erfolg. Ich habe das Resultset dann aus dem
SQL Server per Excel exportiert und ich bekomme bei Gruppierung pro Markt oder Gruppierung pro Kalenderwoche einfach einen falsch gerundeten Wert um 1 Cent.

z.B.: Eine Zwischensumme ist 13839,92 und bei anderer Gruppierung 13839,93
obwohl jedes Ergebnis erst an der 3. kommastelle unterscheidet(13839,926 und 13839,927).
Enmal rundet er auf und einmal rundet er ab obwohl beide Zahlen über 5 sind.

3 Tage meines Lebens :-(

Wäre toll wenn irgendjemand damit Erfahrung hat.
Top of the page Bottom of the page