laravel查询-多字段关键字搜索

关键字查询,同时查询两个字段,一开始使用 orWhere写法

$query->where('sms_title','like', '%'.$keywords.'%')

           ->orWhere('sms_content','like', '%'.$keywords.'%');

如果只有这两个条件,那就正常使用没问题了.但是,这里还需要再加一个条件.

->where("sms.receiver_id", "=", $account_id)

这三条组合起来,结果就是我们想要的了.


于是找到下面的写法:

$keywords = $arrData['keywords'] ;

if(!empty($keywords)){

    $query->where(DB::raw('concat(sms_title,sms_content)'),'like','%'.$keywords.'%');

}

问题完美解决!

你可能感兴趣的:(laravel查询-多字段关键字搜索)