仅获取列数最高的用户

时间:2018-11-08 21:07:48

标签: php laravel eloquent

我有一个users表和一个score表。在我的score表中有一个名为'points'的字段。我只想选择得分最高的用户。因此,在我的score表中拥有最高编号的用户。

当前,我的代码只吸引了第一个用户。例如我有2个用户, 约翰和母鹿。约翰有70分,而母鹿有80分。因此,我希望Doe可以在控制台中登录,而John可以在控制台中登录。我在这里想念什么?

代码

 Date::All()
    ->each(function($date, $key) {
          if($date->period->isToday()) {
                $users = User::with('score')->get();
                $maxUser = $users->sortByDesc('points')->first();
                \Log::debug($maxUser);      
           }
    });

输出

{"id":1,"name":"John Doe","username":"John 123","country":"Belgium","email":"John@example.com","email_verified_at":null,"type":"default","participated":0,"created_at":"2018-11-08 20:23:47","updated_at":"2018-11-08 20:23:47","deleted_at":null,"score":{"id":1,"user_id":1,"points":70,"created_at":"2018-11-08 20:23:47","updated_at":"2018-11-08 20:23:47"}}

我希望我的maxUser是Doe而不是John,因为他获得了最高分,有什么建议吗?

0 个答案:

没有答案