Я хочу группировать данные по неделям в месяц, как это сделать? вот пример данных
date point1 point2
"2020-03-01" 1000 2000
"2020-03-02" 1000 2000
"2020-03-03" 1000 2000
"2020-03-04" 1000 2000
"2020-03-05" 1000 2000
"2020-03-06" 1000 2000
"2020-03-07" 1000 2000
"2020-03-08" 1000 2000
"2020-03-09" 1000 2000
"2020-03-10" 1000 2000
"2020-03-11" 1000 2000
"2020-03-12" 1000 2000
"2020-03-13" 1000 2000
"2020-03-14" 1000 2000
"2020-03-15" 1000 2000
"2020-03-16" 1000 2000
"2020-03-17" 1000 2000
"2020-03-18" 1000 2000
"2020-03-19" 1000 2000
"2020-03-20" 1000 2000
"2020-03-21" 1000 2000
"2020-03-22" 1000 2000
"2020-03-23" 1000 2000
"2020-03-24" 1000 2000
"2020-03-25" 1000 2000
"2020-03-26" 1000 2000
"2020-03-26" 1000 2000
"2020-03-27" 100 2000
"2020-03-28" 1000 2000
"2020-03-29" 1000 2000
"2020-03-30" 1000 2000
Я хочу группировать по неделям в месяце и получить начальную и конечную дату, как мне это сделать?
Я пытался использовать laravel, код похож на ниже
$startDate = date('Y-m-d', strtotime($request->get('start_date')));
$endDate = date('Y-m-d', strtotime($request->get('end_date')));
$transactions = $this->transaction
->select(
DB::raw("date_trunc('WEEK',(date + interval '1 day'))- interval '1 day' AS week"),
DB::raw('sum("point1" + "point2") total')
)
->groupBy('week')
->whereDate('date', '>=', $startDate)
->whereDate('date', '<=', $endDate)
->get();
код выше будет суммировать следующую неделю в следующем месяце, как пример даты 29-03-2020 продолжается до 2020-04-04, и я не хочу этого делать, я просто хочу закончить в последнюю дату месяца (2020-03-31)
То, что я расширяю, составляет
start_date end_date total
2020-03-01 2020-03-07 21000
2020-03-08 2020-03-14 21000
2020-03-15 2020-03-21 21000
2020-03-22 2020-03-28 21000
2020-03-29 2020-03-31 21000
Большое спасибо за помощь.