본문 바로가기

SpringDataJpa

[SpringBoot][SpringDataJpa] Sort 다중 조건 정렬

728x90
반응형

1.단일 sort

Sort sort = new Sort(Sort.Direction.ASC, "id")return jpaRepository.findAll(sort);

2.다중 sort (id정렬 후 time정렬)

  • 정렬 방향이 하나일 때
Sort sort = new Sort(Sort.Direction.ASC, "id", "time")return jpaRepository.findAll(sort);

3.다중 sort (정렬 조건 필드마다 정렬 방향 따로)

Sort sort = Sort.by(      Sort.Order.desc("time"),      Sort.Order.asc("id")    );return jpaRepository.findAll(sort);

[필자의 프로젝트 코드에 적용한 코드]

// jpa 다중 정렬 order
        Sort sort = Sort.by(
                Sort.Order.desc("currentMember"),
                Sort.Order.asc("date")
        );
        PageRequest pageRequest = PageRequest.of(cursor, PAGING_SIZE, sort);

        Slice<Board> boards = boardRepository.findAllBoardsByCategory(pageRequest, dto.getCategoryId());

 

[Rerence]

반응형