Я создаю массив для отображения рейтингов в диаграмме для каждого дня текущей недели, используя это l oop
$ratings = collect([]);
$startOfWeek = Carbon::now()->startOfWeek();
for ($days_forwards = 0; $days_forwards <= 6; $days_forwards++) {
$ratings->push(Rating::whereIn('song_id', $userSongs)
->orWhere(function ($query) use ($userAlbums) {
$query->whereIn('album_id', $userAlbums);
})
->orWhere(function ($query) use ($userArtists) {
$query->whereIn('artist_id', $userArtists);
})
->whereDate('created_at', $startOfWeek->addDays($days_forwards))
->count());
$startOfWeek = Carbon::now()->startOfWeek();
}
Это отлично работает только с первым whereIn, но когда я Добавьте два других фильтра orWhere, и диаграмма выровняется до двух результатов на каждый день. Я не могу понять, почему это происходит?