-
관계형 집계 및 순서정렬(Relation count orderBy) #특정기간 #좋아요 #집계 #랭킹 #순위 #dense_rank()Laravel 2023. 1. 7. 23:35반응형SMALL
# What? 이게 뭔데?
- 관계데이터들의 개수를 세서 정렬
# Why? 이걸 왜 쓰는데?
- 게시물을 특정 기간동안 받은 좋아요수를 정렬한다던지 등
# How? 어떻게 쓰는데?
\App\Models\User::query() ->withCount([ 'products' => function (\Illuminate\Database\Eloquent\Builder $query) { $query->whereBetween('buy_date', ['2021-05-19 00:00:00', '2021-05-19 23:59:59']); } ]) ->orderBy('products_count') ->get();
* 동률점수 포함 랭킹숫자 나열하는법
$pointHistories = PointHistory::select(DB::raw("*, SUM(point) AS total, dense_rank() OVER (ORDER BY total DESC) AS rank")) ->groupBy("user_id") ->orderBy("rank", "asc") ->orderBy("user_id", "desc");
LIST'Laravel' 카테고리의 다른 글
윈도우에서 PHP 버전 바꾸는법 (on windows), php 버전 여러개 세팅하는법 (1) 2023.01.10 특정값 우선순위 정렬 orderBy #orderByRaw # FIELD #순서 (0) 2023.01.08 Array validation #유효성 #배열 #배열유효성 검사하는법 (0) 2022.12.23 Observer event(옵저버 이벤트) 안될 때 (0) 2022.12.09 통계 query 작성법(groupBy) (0) 2022.10.05