Heim > Datenbank > MySQL-Tutorial > Wie filtere ich Barwerte nach Datum in SQL für die Gesamtsummierung?

Wie filtere ich Barwerte nach Datum in SQL für die Gesamtsummierung?

Mary-Kate Olsen
Freigeben: 2025-01-05 03:11:43
Original
475 Leute haben es durchsucht

How to Filter Cash Values by Date in SQL for Total Summation?

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
Nach dem Login kopieren

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
Nach dem Login kopieren

Erklärung:

  • CASE WHEN...THEN...ELSE...END : Dies ist die gesuchte CASE-Ausdruckssyntax, die einen booleschen Ausdruck (in diesem Fall ValueDate > @startMonthDate) mit einer Menge von vergleicht Ergebnisse. Wenn der boolesche Ausdruck wahr ist, gibt er den Geldwert zurück; andernfalls wird 0 zurückgegeben.
  • SUM(): Diese Funktion wird verwendet, um die Summe der Geldwerte zu berechnen, die die Datumsfilterkriterien erfüllen.

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage