回答編集履歴

1

修正

2022/06/30 13:53

投稿

phper.k
phper.k

スコア3923

test CHANGED
@@ -13,15 +13,16 @@
13
13
  {
14
14
  $keyword = $request->input('keyword');
15
15
 
16
- $fighters = DB::from(
16
+ $fighters = DB::query()
17
+ ->fromSub(
17
- Fighter::query()
18
+ Fighter::query()
18
- ->selectRaw('fighters.*')
19
+ ->selectRaw('fighters.*')
19
- ->addSelect(DB::raw('count(likes.user_id) as likes_count'))
20
+ ->addSelect(DB::raw('count(likes.user_id) as likes_count'))
20
- ->addSelect(DB::raw('rank() over (order by count(likes.user_id) desc) as rank'))
21
+ ->addSelect(DB::raw('rank() over (order by count(likes.user_id) desc) as rank'))
21
- ->leftJoin('likes', 'fighters.id', '=', 'likes.fighter_id')
22
+ ->leftJoin('likes', 'fighters.id', '=', 'likes.fighter_id')
22
- ->groupBy('fighters.id')
23
+ ->groupBy('fighters.id'),
23
- ->query()
24
+ 'main')
24
- )->orderByRaw('likes_count')
25
+ ->orderByRaw('likes_count')
25
26
  ->when($keyword, function ($query) use ($keyword) {
26
27
  $query->where('fighter_name', 'LIKE', "%{$keyword}%");
27
28
  })