Php 拉维尔最高点排序法
检查以下代码:Php 拉维尔最高点排序法,php,laravel,Php,Laravel,检查以下代码: $scores2 = Highscore::all()->orderBy('points', 'desc')->groupBy('user_id')->get(); 我有这个代码,但当我加载页面时,它不会得到每个玩家的最高分数。我不知道我做错了什么,有人能帮帮我吗?您需要删除->all(),因为您是通过->get()方法接收数据的: Highscore::orderBy('points', 'desc')->groupBy('user_id')->
$scores2 = Highscore::all()->orderBy('points', 'desc')->groupBy('user_id')->get();
我有这个代码,但当我加载页面时,它不会得到每个玩家的最高分数。我不知道我做错了什么,有人能帮帮我吗?您需要删除
->all()
,因为您是通过->get()
方法接收数据的:
Highscore::orderBy('points', 'desc')->groupBy('user_id')->get();
对它的解释非常好。::all()
对于->get()
所以,如果您想在课后立即创建静态方法,请使用query()
像
而且格式可以更漂亮
$scores2 = Highscore::query()
->orderBy('points', 'desc')
->groupBy('user_id')
->get();
删除
all()->
,因为您使用的是分组依据,它与当前问题无关。创建另一个关于正确SQL的问题
$scores2 = Highscore::query()
->orderBy('points', 'desc')
->groupBy('user_id')
->get();