@GORAKH - I was write this first, but all of 4 whereDate executed as && together:
\App\Models\Game::whereNull('deleted_at')
->whereDate('started_at', '>=', $now)->whereDate('started_at', '<=', $afterTomorrow)
->whereDate('started_at', '<=', $now)->whereDate('finished_at', '>=', $now)
->orderBy('created_at', 'desc');
and then I was changed query to this:
\App\Models\Game::whereNull('deleted_at')
->whereDate('started_at', '>=', $now)->whereDate('started_at', '<=', $afterTomorrow)
->orWhereDate('started_at', '<=', $now)->whereDate('finished_at', '>=', $now)
->orderBy('created_at', 'desc');
but the first to the third query is executed correctly, but the fourth qurry doesn't executed correctly, because the first and second whereDate must be && together, and also the third and fourth whereDate query must be && together, and then the result of these two queries must be || together.