Ich verwende die SUM()
-Funktion. Aber SUM()
summiert den negativen Wert in der Spalte. In einer Spalte sollte der positive Wert addiert und der negative Wert subtrahiert werden und nicht wie bei SUM()
einfach addiert werden.
20.00
20.00
20.00
20.00
-20.00
20.00
20.00
40.00
20.00
20.00
20.00
20.00
20.00
-20.00
-20.00
20.00
SUM()
sollte 220 zurückgeben und nicht 440. Gibt jedoch 440 zurück.
1 Stimmen
Wenn Sie 1,2,-2 als Zeilen in einer Spalte haben und Summe dafür aufrufen, wäre das Ergebnis 1. Ist dies nicht das Verhalten, das Sie erhalten?
1 Stimmen
Wenn Sie einen negativen Wert zu einem positiven Wert hinzufügen, handelt es sich tatsächlich um eine Subtraktion. 3 + (-5) = 3 -5 = -2
0 Stimmen
Bitte fügen Sie einige Beispiele hinzu (bearbeiten Sie Ihre Frage): Welche Daten haben Sie, was macht SUM() damit, was möchten Sie erhalten?
0 Stimmen
Hmm, was ist der Datentyp der Spalte?
0 Stimmen
@hrishi In meinem Beispiel bekommst du 8, richtig? Wenn ja, kannst du dein Query und die Daten, die in das Query einfließen, zeigen?
6 Stimmen
@hrishi - Das tut tatsächlich 220 zurück Online-Demo Verwendest du es in einem Join, der die Anzahl der zu summierenden Zeilen verdoppelt? Es wäre 340, wenn -ve Zahlen als positiv summiert würden.
0 Stimmen
@hrishi - Können Sie Ihre tatsächliche Abfrage posten, damit wir Ihnen sagen können, wie Sie sie beheben können?
1 Stimmen
Martin danke... das Problem wurde behoben... es gab einen doppelten Wert zurück... Tut mir leid für die Unannehmlichkeiten, Leute