Не получить правильный результат, но работает в SQL - PullRequest
0 голосов
/ 02 июля 2019

Это код, который уже работает в базе данных mysql, но я хочу преобразовать его в Laravel 5.6

    SELECT * 
    FROM `listings` 
    WHERE (
    country_id=1 
    AND (state=32 or city=8) 
    AND (listing_id LIKE "%6562%" OR title LIKE "%6562%"))

1 Ответ

0 голосов
/ 02 июля 2019

Возможно, у вас есть модель с именем Listing, которая заботится о таблице listings. Вы можете написать запрос так:

$listings = App\Listing::where('field1', 1)
    ->where(function ($query) {
        $query->where('field2', 32);
        $query->orWhere('field3', 8);
     })
     ->where(function ($query) {
        $query->where('field4', 'LIKE', '%6562%');
        $query->orWhere('field5', 'LIKE', '%6562%');
     })
     ->get();

Первым параметром метода where может быть обратный вызов, который может достичь такого типа группировки (field2 = 32 или field3 = 8)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...