MySQL具有一项功能,可以获取查询返回的记录总数,没有限制,即SQL_CALC_FOUND_ROWS
。 Laravel支持吗?
目前,我必须在两个查询中执行此操作:
public function dataTable() {
$bookings = DB::table('bookings')
->limit(Input::query('iDisplayLength'))
->offset(Input::query('iDisplayStart'))
->get();
$count = $bookings = DB::table('bookings')
->count();
return Response::json([
'iTotalRecords' => $count,
]);
}
这不仅会降低效率,而且一旦我添加了所有
->where()
标准,就会有很多冗余代码。 最佳答案
对于任何复杂的或特定于供应商的查询,通常必须直接使用DB::raw()
传递查询,例如:
$bookings = DB::table('bookings')
->select(DB::raw('SQL_CALC_ROWS_FOUND ...
关于php - 获取Laravel的记录总数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22748084/