这是我在数据库Laravel 5.5中搜索的查询
$search = $request->get('search');
$projects = new Project();
$projects = $projects->where('description', 'like', '%' . $search . '%')
->orWhere('created_at', 'like', '%' . $search . '%')
->orderBy("created_at", 'desc')
->paginate(10)
->withPath('?search=' . $search);
return view('projects.index', compact('projects'));
答案 0 :(得分:0)
问题的原因是datetime
字段为操作'like'
的非法混合排序提供了错误。使用DATE_FORMAT()
使其正常运行。
$projects = $projects->where('description', 'like', '%' . $search . '%')
->orWhereRaw("DATE_FORMAT(created_at, '%Y-%m-%d') LIKE '%$search%'")
->orderBy("created_at", 'desc')
->paginate(10)
->withPath('?search=' . $search);