Php Laravel使用GroupBy并获取最新条目
我目前正在使用Php Laravel使用GroupBy并获取最新条目,php,laravel,laravel-4,Php,Laravel,Laravel 4,我目前正在使用groupBy('conv_id')将名为messages的表中的行分组到对话中 现在,所有返回的结果都将是唯一的conv_id,尽管唯一行不是最新的,而是创建的第一行 使用orderBy('created_at','desc')没有什么作用,我如何查询最新的行 我现在使用的查询: $this->orderBy('created_at', 'desc')->where('receiver', '=', $id)->orWhere('sender', '=', $i
groupBy('conv_id')
将名为messages
的表中的行分组到对话中
现在,所有返回的结果都将是唯一的conv_id
,尽管唯一行不是最新的,而是创建的第一行
使用orderBy('created_at','desc')
没有什么作用,我如何查询最新的行
我现在使用的查询:
$this->orderBy('created_at', 'desc')->where('receiver', '=', $id)->orWhere('sender', '=', $id)->groupBy('conv_id')->select('conv_id', 'created_at')->get()->toArray();
该表如下所示:
$this->orderBy('created_at', 'desc')->where('receiver', '=', $id)->orWhere('sender', '=', $id)->groupBy('conv_id')->select('conv_id', 'created_at')->get()->toArray();
ID |发送方|接收方|在|更新|在|创建|在| CONV | ID我想,您使用的tf
Message::where('receiver', '=', $id)
->orWhere('sender', '=', $id)
->orderBy('created_at', 'desc')
->select('conv_id', 'created_at')->take(1)->get();
然后,这将根据created\u at
中的where
子句返回最后一个条目/行