如何将DB索引与Datatables和yajra / laravel-datatables

时间:2016-06-06 05:26:37

标签: mysql datatables laravel-5.1

到目前为止,当我尝试使用列过滤时,我可以使用LIKE或REGEXP,但是他们使用的是表索引,考虑到我需要过滤的数据量,这是一个很大的问题。

有没有办法使用索引获得完全匹配? (数据库索引)

我正在使用: https://github.com/yajra/laravel-datatables v6.11.3和 https://datatables.net v1.10.10

1 个答案:

答案 0 :(得分:1)

使用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

中查看详情