Laravel Красноречивый запрос ИЛИ ГДЕ - PullRequest
0 голосов
/ 06 октября 2018

Как написать красноречивый запрос Laravel для модели / таблицы с именем Страна / страны, где, если я выполняю поиск по любой переменной и получаю результат в соответствии с запросом, поиск в 3 различных столбцах аналогичен SQL в данном изображении.

Как написать аналогичный запрос в Laravel в Laravel 5.6 /5.7

query and results are in Image

Ответы [ 2 ]

0 голосов
/ 06 октября 2018

используйте ваш модельный запрос, как этот

 Model::where(function($query)
    {
        $query->where('column1', 'like', 'keyword');
        $query->orWhere('column2', 'like', 'keyword');
        $query->orWhere('column3', 'like', 'keyword');
    })->get();
0 голосов
/ 06 октября 2018

Вам нужны функции where() и orWhere() в Query Builder в laravel

$countries = Country::where('name', 'like', '%af%')
    ->orWhere('alpha-2', 'like', '%af%)
    ->orWhere('alpha-3', 'like', '%af%')
    ->get();

и если вы хотите динамически передавать значения в функции where().

$value = 'af';

$countries = Country::where('name', 'like', "%$value%")
    ->orWhere('alpha-2', 'like', "%$value%")
    ->orWhere('alpha-3', 'like', "%$value%")
    ->get();

Примечание 'Двойная кавычка' при передаче переменной.

...