Я пытаюсь получить продукты из этой базы данных, которые либо попадают в определенный диапазон дат, либо имеют значение NULL
. Кроме того, продукты должны , а не были приобретены ранее.
Мой запрос:
$offerings = Offering::with(['items' => function($query) use ($purchased, $dt) {
$query->whereNotIn('offering_items.id', $purchased)
->whereDate('offering_items.start_date', '<=', $dt->toDateString())
->whereDate('offering_items.end_date', '>=', $dt->toDateString())
->orWhereNull('offering_items.start_date')
->orWhereNull('offering_items.end_date');
}])->get();
Структура таблицы:
Таблица:
В результате этого запроса выводятся все записи из базы данных.
Я не вижу, что я делаю не так.