回答編集履歴
1
修正
test
CHANGED
@@ -13,15 +13,16 @@
|
|
13
13
|
{
|
14
14
|
$keyword = $request->input('keyword');
|
15
15
|
|
16
|
-
$fighters = DB::
|
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
|
-
|
24
|
+
'main')
|
24
|
-
|
25
|
+
->orderByRaw('likes_count')
|
25
26
|
->when($keyword, function ($query) use ($keyword) {
|
26
27
|
$query->where('fighter_name', 'LIKE', "%{$keyword}%");
|
27
28
|
})
|