Laravel雄辩的查询限制和偏移量已自动添加,以计算查询次数

时间:2019-01-22 14:34:18

标签: php laravel eloquent

限制和偏移量会自动添加到以下查询中,尽管我没有在其中添加任何限制和偏移量。

$total_trashed_records = $query_records_trashed
                             ->onlyTrashed()
                             ->count();

以下是我的查询。最后一个查询只是返回垃圾桶中的用户总数,但是正在添加limitoffset,但它不起作用。

以下是我的查询。

$fields = ["id", "first_name","last_name","username","user_type","job_title","status"];

  $query_records = User::select($fields)
                           ->Where('first_name', 'like', '%' .$s. '%');

   $query_records_trashed = $query_records;    
   $total_records = $query_records->count();

   $records = $query_records
                  ->orderBy($sort_column, $sort_order)
                  ->skip($page*$rows_per_page)
                  >take($rows_per_page)
                  ->get();

  $total_trashed_records = $query_records_trashed
                               ->onlyTrashed()
                               ->count();

以下是查询日志中最后一个查询的结果。

"query" => "select count(*) as aggregate from `users` where `first_name` like ?  and `users`.`deleted_at` is not null limit 50 offset 0",
"bindings" => array:1 [
      0 => "%%"
     ]

"time" => 0.67

1 个答案:

答案 0 :(得分:2)

要从生成的查询中删除limitoffset,您需要从查询构建器中删除这两行:

->skip($page*$rows_per_page)
->take($rows_per_page)

分别等于offsetlimit


查看文档的this section