Laravel 4联接表分页返回一些空页

Laravel 4联接表分页返回一些空页,laravel,laravel-4,eloquent,Laravel,Laravel 4,Eloquent,我有3个表:用户,移动用户,油门 用户:id、电子邮件、密码 移动用户:id,用户id 节流阀:id,用户id,禁止 这是我的代码: $mobile_users = DB::table('mobile_users') ->join('users', 'mobile_users.user_id', '=', 'users.id') ->join('throttle', 'mobile_users.user_id', '=', 'throt

我有3个表:用户,移动用户,油门

  • 用户:id、电子邮件、密码
  • 移动用户:id,用户id
  • 节流阀:id,用户id,禁止
  • 这是我的代码:

    $mobile_users = DB::table('mobile_users')
                ->join('users', 'mobile_users.user_id', '=', 'users.id')
                ->join('throttle', 'mobile_users.user_id', '=', 'throttle.user_id')
                ->where(function($where) use ($query) {
                    $where->where('users.first_name', 'LIKE', "%$query%")
                        ->orWhere('users.last_name', 'LIKE', "%$query%");
                })
                ->select(
                    'mobile_users.*',
                    'users.*',
                    'throttle.banned'
                )
                ->distinct()
                ->orderBy('mobile_users.created_at', 'DESC')
                ->paginate($limit);
    
    这会返回最后一页内容为空,我不知道为什么,有人能帮我吗

    更新

    以下是dd(DB::getQueryLog())时的结果:

    数组(7){[0]=>array(3){[“query”]=>string(44)“从
    users
    where
    id
    =?limit 1”[“bindings”]=>array(1){[0]=>int(2)}[“time”=>float(6)}[1]=>array(3){[“query”=>string(52)“从
    throttle
    where
    userid
    =?limit 1[“bindings”=>[“时间”]=>float(3)}[2]=>array(3){[“查询”]=>string(45)”从
    groups
    where
    id
    =?limit 1”[“bindings”]=>array(1){[0]=>int(1)}[“时间”]=>float(2)}[3]=>array(3){[“查询”=>string(229)”选择
    *,
    用户组
    用户id
    作为
    透视用户id
    用户组
    组id
    作为
    透视组id
    来自
    内部连接
    用户组
    上>用户组
    user\u id
    =?“[“绑定”]=>数组(1){[0]=>int(2)}[“时间”=>float(3)}[4]=>array(3){[“查询”]=>string(39)”从
    payback\u配置
    limit 1”[“绑定”=>array(0){}[“时间”=>float(5)}[5]=>array(3){“查询”=>string(249)”选择计数()作为
    mobile\u用户
    internal join
    users
    on
    mobile\u用户
    user\u id
    用户
    id
    内部连接
    throttle
    用户
    throttle
    用户
    的聚合,其中(
    users
    first\u name
    LIKE?或
    users
    last\u name
    LIKE?)[“bindings”]=>array(2){[0]=>string(2)][1]=>string(2)%%”}[“time”]=>float(2)}[6]=>array(3){[“query query”=>string(344)”从
    移动用户
    内部连接
    用户
    移动用户
    上选择不同的
    移动用户
    用户
    用户id
    =
    用户
    id
    内部连接
    移动用户
    用户id
    上选择禁止的rottle
    user\u id
    where(
    users
    first\u name
    LIKE?或
    users
    last\u nameLIKE?)按
    mobile\u users
    DESC limit 3偏移量0][bindings]=>数组(2)[[0]=>string(2][1]=>string(2)”%“}[“time”]>float(9)]


    使用
    DB::getQueryLog()
    查找实际生成的查询并更新问题,这样人们就有更多的机会提供帮助当您注释掉
    paginate($limit)
    调用时它工作正常吗?当您执行
    ->skip($offset)->take($page\u size)
    时它工作正常吗?您是如何解决这个问题的?