본문 바로가기

개발일기/QueryDsl

QueryDsl 결과조회

728x90
반응형

QueryDsl에 여러가지 결과 조회에 대하여 학습하였습니다.

 

- fetch() : 리스트 조회, 데이터 없으면 빈 리스트 반환
- fetchOne() : 단건 조회
   - 결과 없으면 null
   - 결과가 둘 이상이면 com.querydsl.core.NonUniqueResultException 이 뜸
- fetchFirst() : limit(1).fetchOne()
- fetchResults() : 페이징 정보 포함, total count 쿼리 추가 실행
- fetchCount() : count쿼리로 변경해서 count 수 조회

 

예제1)

List<Member> member = queryFactory
.selectFrom(qmember)
.fetch();

- 리스트를 조회합니다.

 

예제2)

Member fetchOne = queryFactory
.selectFrom(qmember)
.fetchOne();

- 단건을 조회합니다.

 

예제3)

QueryResults<Member> result = queryFactory
.selectFrom(qmember)
.fetchResults();

Long total = result.getTotal();
List<Member> content = result.getResults();

- 리스트 조회 및 페이지 정보를 같이 조회 합니다.

- total은 Long 형으로 return 되며 .getTotal() 로 조회합니다.

- 데이터 조회같은 경우는 List 타입으로 return 되며 .getResults(); 로 조회합니다.

 

예제4)

 

Long totalCount = queryFactory
.selectFrom(qmember)
.fetchCount();

- countSelect 문을 작성하여 count 값을 조회합니다.

728x90
반응형

'개발일기 > QueryDsl' 카테고리의 다른 글