Summieren von Barwerten mit Datumsfilterung in SQL
Wie Sie bereits erwähnt haben, verfügen Sie über eine SQL-Anweisung, die den Gesamtbarbetrag für jede einzelne Transaktion berechnet ID mithilfe der folgenden Zeile:
select sum(cash) from Table a where a.branch = p.branch and a.transID = p.transID) TotalCash
Um diese Abrechnung so zu ändern, dass nur die Gesamtbarbeträge angezeigt werden, deren Wertstellungsdatum innerhalb des letzten Monats liegt, können Sie dies tun Aktualisieren Sie es auf folgende Weise:
select SUM(CASE WHEN ValueDate > @startMonthDate THEN cash ELSE 0 END) from Table a where a.branch = p.branch and a.transID = p.transID) TotalMonthCash
Erklärung:
Leistungsoptimierung:
Nebenbei bemerkt: Wenn die Leistung Ihrer Abfrage zu einem Problem wird, sollten Sie erwägen, sie mit a neu zu schreiben JOIN und GROUP BY anstelle einer abhängigen Unterabfrage. Dies kann möglicherweise die Ausführungszeit verbessern.
Das obige ist der detaillierte Inhalt vonWie filtere ich Barwerte nach Datum in SQL für die Gesamtsummierung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!