-
[Spring] querydsl - 임의의 기준으로 정렬을 하고 싶다면Spring 2022. 1. 5. 00:04
NumberExpression<Integer> rankPath = new CaseBuilder() .when(member.age.between(0, 20)).then(2) .when(member.age.between(21, 30)).then(1) .otherwise(3); List<Tuple> result = queryFactory .select(member.username, member.age, rankPath) .from(member) .orderBy(rankPath.desc()) .fetch(); for (Tuple tuple : result) { String username = tuple.get(member.username); Integer age = tuple.get(member.age); Integer rank = tuple.get(rankPath); System.out.println("username = " + username + " age = " + age + " rank = " + rank); }
이런식으로 새 행을 만들어 우선순위를 매기고 그 기준으로 정렬을 하면 된다.
'Spring' 카테고리의 다른 글
[Spring] querydsl - 동적쿼리 만드는 법 (0) 2022.01.05 [Spring] querydsl - 프로젝션과 결과 반환 방법 (0) 2022.01.05 [Spring] AssertJ 정리 (0) 2022.01.04 [Spring] querydsl - join (0) 2022.01.03 [Spring] querydsl - paging (0) 2022.01.03