Menjumlahkan Nilai Tunai dengan Penapisan Tarikh dalam SQL
Seperti yang anda nyatakan, anda mempunyai penyata SQL yang mengira jumlah tunai untuk setiap transaksi unik ID menggunakan baris berikut:
select sum(cash) from Table a where a.branch = p.branch and a.transID = p.transID) TotalCash
Untuk mengubah suai penyata ini kepada hanya jumlah nilai tunai yang mempunyai tarikh nilai dalam tempoh terakhir bulan, anda boleh mengemas kininya dengan cara berikut:
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
Penjelasan:
Pengoptimuman Prestasi:
Sebagai nota sampingan, jika prestasi pertanyaan anda menjadi isu, pertimbangkan untuk menulis semula menggunakan JOIN dan GROUP BY dan bukannya subquery bergantung. Ini berpotensi meningkatkan masa pelaksanaan.
Atas ialah kandungan terperinci Bagaimana untuk Menapis Nilai Tunai mengikut Tarikh dalam SQL untuk Jumlah Penjumlahan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!