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();
.selectFrom(qmember)
.fetch();
- 리스트를 조회합니다.
예제2)
Member fetchOne = queryFactory
.selectFrom(qmember)
.fetchOne();
.selectFrom(qmember)
.fetchOne();
- 단건을 조회합니다.
예제3)
QueryResults<Member> result = queryFactory
.selectFrom(qmember)
.fetchResults();
Long total = result.getTotal();
List<Member> content = result.getResults();
.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();
.selectFrom(qmember)
.fetchCount();
- countSelect 문을 작성하여 count 값을 조회합니다.
728x90
반응형
'개발일기 > QueryDsl' 카테고리의 다른 글
QueryDsl페이징 처리 (0) | 2023.07.11 |
---|---|
QueryDsl정렬 (0) | 2023.07.10 |
QueryDsl Where 절에서 And 사용법 두가지 (0) | 2023.07.10 |
JQPL이 제공하는 검색 조건 (0) | 2023.07.10 |
QueryDsl 단건 조회 샘플 (0) | 2023.07.03 |