반응형
1. OrderBy 사용하기 - OrderBy + 속성 + ASC/DESC
아래와 같이 findAll, findAllBy[조건] 뒤에 OrderBy[정렬기준]을 써주면 된다. 내림차순으로 정렬하고 싶다면, 뒤에 Desc를 붙여주면 된다.
[ findAll에서 OrderBy 예제 ]
예제는 아래와 같다. 첫번째는 id 기준으로 postList를 정렬하는 것이고, 두번째는 id를 내림차순으로 결과를 가져오는 것이다.
또한 당연한 얘기지만, PostRepository에 List<Post> findAllOrderById(); 처럼 선언을 해놓고 controller에서 아래처럼 사용해야 한다.
List<Post> postList = postRepository.findAllOrderById();
List<Post> list = postRepository.findAllOrderByIdDesc();
+ GreaterThan : cnt가 5보다 큰 애들을 id 기준으로 정렬하고 싶다면 findByCntGreaterThanOrderById(5)라고 하면 된다.
2. Sort 사용하기 - findAll(Sort.by([정렬기준]))
아래와 같이 findAll, findAllBy[조건] 괄호 안에 Sort.by([정렬기준])을 써주면 된다.
내림차순으로 정렬하고 싶다면, Sort.by(Sort.Direction.DESC, [정렬기준]))을 사용해주면 된다.
[ findAll에서 Sort 예제 ]
예제는 아래와 같다. 첫번째는 id 기준으로 postList를 정렬하는 것이고, 두번째는 id를 내림차순으로 결과를 가져오는 것이다.
List<Post> posts = postRepository.findAll(Sort.by("id"));
List<Post> posts = postRepository.findAll(Sort.by(Sort.Direction.DESC, "id"));
728x90
반응형
'JPA' 카테고리의 다른 글
[JPA] 복수 조건 조회, WHERE 다중 조건 (And, Or 등) (0) | 2022.07.14 |
---|