Menjumlahkan data pertanggal berdasarkan periode bulan yang sudah di tentukan pada laravel

Saya sedang membuat laporan bulanan pada aplikasi saya, dimana dalam laporan ini menampilkan jumlah/total data transaki pembayaran pertanggal dalam periode bulan tertentu yang ditentukan melalui request input, tapi saya kesulitan mengimplementasikannya dalam laravel, sejauh ini saya mencoba dengan cara berikut :

$data = Pembayaran::select([
	DB::raw('count(id) as `count`'),
	DB::raw('DATE(created_at) as day')
	])->groupBy('day')
	->where('created_at', '>=', Carbon::now()->subWeeks(1))
	->get();

$output = [];
foreach($data as $entry) {
	$output[$entry->day] = $entry->count;
}

dd($output);

Hasil Outputnya seperti ini :

array:5 [
  "2021-01-01" => 1
  "2021-01-03" => 1
  "2021-01-04" => 3
  "2021-01-05" => 1
  "2021-01-07" => 1
]

Meskipun ini hanya menampilkan tanggal yang mempunyai data saja tapi Ini mendekati apa yang saya harapkan, saya berharap bisa menampilkan semua tanggal dalam periode bulan yang sudah di tentukan meskipun hasil perhitungannya NOL (0)/Tidak ada data.

avatar Supriono
@Supriono

84 Kontribusi 16 Poin

Diperbarui 3 tahun yang lalu

1 Jawaban:

<div>silahkan dicoba menjumlah data per tanggal dalam satu bulan di laravel<br>contoh di bawah masukkan $month dan $year sebagai filter bulan dan tahun<br><br></div><pre>Table::select('created_at')
-&gt;whereMonth('created_at', '=', date($month))
-&gt;whereYear('created_at', '=', date($year))
-&gt;orderBy('created_at')
-&gt;get()-&gt;groupBy(function($time) {
return Carbon::parse($time-&gt;created_at)-&gt;format('Y-m-d');
});</pre>

avatar hilmanski
@hilmanski

2670 Kontribusi 2132 Poin

Dipost 3 tahun yang lalu

Tanggapan

terimakasih banyak mas hilman

Login untuk ikut Jawaban