Так что это не исправление самого оператора SQL, а скорее исправление моей проблемы.
Как сказано в моем OP, я могу найти две записи, если удалю метод where()
. Я решил, что могу начать с получения записей, которые находятся между двумя моими датами, а затем выполнить фильтрацию where()
для коллекции результатов.
Это работает:
//Get the records from the database, that's between two dates.
$consols = Consol::with(['car'])->whereBetween('first_etd', [$from, $to])->get();
//Now $consols is a Laravel collection, so I can use the where() method here.
$consols = $this->consols->where('car_id', '!=', $carId);
Выше успешно возвращает две записи.