获得laravel 5.1最新的8条记录

时间:2015-11-02 06:51:14

标签: php mysql laravel-5

如何通过手机号码字段获取此查询的最新8票:

results = DB::table('votes')->whereIn('votes.id', function($query){
                    $query->select(DB::raw('MAX(id) as id'))
                    ->from('votes')
                    ->groupBy('mobile_number', 'position_id','code');
                })->where(array('code'=>$code,'position_id'=>$positionId))->get();

在此查询中,它获得用户的最新总票数,但不限于8.

->where(array('code'=>$code,'position_id'=>$positionId))->take(8)->get(); //it seems this is not working

这是示例表

id  mobile_number   code    position_id
1   123123          1       1
2   123123          3       1
3   321212          2       2
4   123123          4       1
5   123123          5       1
6   123123          6       1
7   123123          7       1
8   123123          8       1
9   123123          9       1
10  123123          10      1

如果我得到123123的投票,它将只得到最新的8,所以在上表中,Id 1将不会包含在结果中。

有什么想法吗?感谢

1 个答案:

答案 0 :(得分:0)

试试这个

较旧版本

take(8)->skip(8)->get();

limit(8)->offset(8)->get();