Answers:
如果要查看数据库中正在运行的内容,请查看运行了dd(DB::getQueryLog())
哪些查询。
试试这个
BookingDates::where('email', Input::get('email'))
->orWhere('name', 'like', '%' . Input::get('name') . '%')->get();
where
。
$data = DB::table('borrowers')
->join('loans', 'borrowers.id', '=', 'loans.borrower_id')
->select('borrowers.*', 'loans.*')
->where('loan_officers', 'like', '%' . $officerId . '%')
->where('loans.maturity_date', '<', date("Y-m-d"))
->get();
我对此有范围,希望对您有所帮助。
public function scopeWhereLike($query, $column, $value)
{
return $query->where($column, 'like', '%'.$value.'%');
}
public function scopeOrWhereLike($query, $column, $value)
{
return $query->orWhere($column, 'like', '%'.$value.'%');
}
用法:
$result = BookingDates::whereLike('email', $email)->orWhereLike('name', $name)->get();
我认为将参数传递给查询的良好做法会更好:
BookingDates::whereRaw('email = ? or name like ?', [$request->email,"%{$request->name}%"])->get();
您还可以使用Laravel侦察器,并使其更易于搜索。 这是文档。