到目前为止,当我尝试列过滤时,我可以使用 LIKE 或 REGEXP,但它们都没有使用表索引,考虑到我需要过滤的数据量,这是一个很大的问题。
有没有办法使用索引获得精确匹配? (数据库索引)
我正在使用: https://github.com/yajra/laravel-datatables v6.11.3 和 https://datatables.net v1.10.10
最佳答案
使用 datatables laravel 包,您可以使用“filterColumn”函数在 laravel 端自定义查找函数中的参数搜索。像这样:
return Datatables::of($users)
->filterColumn('user_id', function($query, $keyword) {
$query->whereRaw("CONCAT(users.id,'-',users.id) like ?", ["%{$keyword}%"]);
})
->make(true);
查看更多信息 Documentation
关于mysql - 如何在数据表和 yajra/laravel-datatables 中使用数据库索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37650074/