Конвертировать запрос SQL в Eloquent - PullRequest
0 голосов
/ 17 октября 2019

Я хотел бы преобразовать это request ниже в Laravel Eloquent.

select * from revision
where fk_motorbike = NumberMoto
and start_time between time_start_training and time_stop_training 
or start_stop between time_start_training and time_stop_training

Я застрял после второй строки ...

$Revision = Revision::where('fk_motorbike', $fk_motorbike)
->where('start_time', "<=", $time_start_training) ?
???
->first();

Я все еще новичок в Laravel.

Спасибо за вашу помощь.

1 Ответ

5 голосов
/ 17 октября 2019

Я предполагаю, что два условия между должны быть в круглых скобках.

$Revision = Revision::where('fk_motorbike', $fk_motorbike)
    ->where(function($query) use($time_start_training, $time_stop_training) {
        $query->whereBetween('start_time', [$time_start_training, $time_stop_training])
            ->orWhereBetween('start_stop', [$time_start_training, $time_stop_training]);
    })
    ->first();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...