テーブル例

たとえば下記のようなデータベーステーブルがあるとします。
モデル名はLogとして、日毎にカウント(count)の合計を出したいとします。

id INT
count INT
created_at TIMESTANP

月別の集計

2019年の月毎に集計したい場合、まずはwhereYearで2019年を検索します。
groupByformat('m')にすると月別にまとまるので、最後にmapsumします。

Log::whereYear('start_at', 2019)
->orderBy('created_at')
->get()
->groupBy(function ($row) {
	return $row->created_at->format('m');
})
->map(function ($day) {
	return $day->sum('count');
});

日別の集計

日別の場合whereMonthで集計したい月を追加します。
groupByの部分を日のdに変更するだけです。
2019年9月を日別に集計したい場合は次のようになります。

Log::whereYear('created_at', 2019)
->whereMonth('created_at', 9)
->orderBy('created_at')
->get()
->groupBy(function ($row) {
	return $row->created_at->format('d');
})
->map(function ($day) {
	return $day->sum('count');
});