首页 文章

Laravel Eloquent查询OR WHERE

提问于
浏览
-1

如何为名为Country / countries的Model /表编写Laravel Eloquent查询,如果我从任何变量中搜索并根据结果获取结果,则查询将在给定Image中的SQL中从3个不同的列搜索 .

如何在Laravel 5.6 /5.7中的Laravel中编写类似的查询

query and results are in Image

2 回答

  • 0

    您正在寻找的是laravel中的查询生成器中的 where()orWhere() 函数

    $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();
    

    Note 'Double Quotation' in variable passing.

  • 2

    像这样使用你的模型查询

    Model::where(function($query)
        {
            $query->where('column1', 'like', 'keyword');
            $query->orWhere('column2', 'like', 'keyword');
            $query->orWhere('column3', 'like', 'keyword');
        })->get();
    

相关问题