Как написать laravel красноречиво для ниже SQL-запроса? Имя пользователя, имя_пользователя, имя последнего и адрес электронной почты - это имена столбцов.Laravel Eloquent query builder путается с оператором 'или' в sql
select * from `message_users` where `username` like %somthing% and (`first_name` like %somthing% or `last_name` like %somthing%) and `email` like %something%
Я попытался это
$queryObj= $this;
if(!empty($filter['username']))
$queryObj = $queryObj->where('username','like','%'.$filter['username'].'%');
if(!empty($filter['name'])){
$queryObj = $queryObj->where('first_name','like','%'.$filter['name'].'%');
$queryObj = $queryObj->orWhere('last_nam','like','%'.$filter['name'].'%');
}
if(!empty($filter['email']))
$queryObj = $queryObj->where('email','like','%'.$filter['email'].'%');
$result = $queryObj->orderBy('id','DESC')->paginate($limit);
return $result;
, но это создает запрос без круглых скобок. Который не дает мне правильный результат!
select * from `message_users` where `username` like %somthing% and `first_name` like %somthing% or `last_name` like %somthing% and `email` like %something%
Не нужна скобка, это пары что-либо сторона 'or' – zanderwar
Материалов В подобном огорожен одинарных кавычках, как«% что-то%» – Susang