@Query 에 countquery를 설정했음에도 안나간는 경우?
691
작성한 질문수 22
안녕하세요 정말 좋은강의 잘듣고 있습니다.
혹시 countquery옵션을 설정했음에도 안나가는 경우가 있을까요?
이전 jpa 활용2 에서 order 객체를 기반으로 springdata jpa repository 를 만든후 아래와 같은 메서들를 정의했는데
@Query(value = "select o from Order o join fetch o.member m join fetch o.delivery d",countQuery = "select count(o) from Order o")
public Page<Order> findAllWithMemberDelivery(Pageable pageable);
결과값은 count 문없이 아래와 같은 쿼리만 나가네요
select
order0_.order_id as order_id1_6_0_,
member1_.member_id as member_i1_4_1_,
delivery2_.delivery_id as delivery1_2_2_,
order0_.delivery_id as delivery4_6_0_,
order0_.member_id as member_i5_6_0_,
order0_.order_date as order_da2_6_0_,
order0_.status as status3_6_0_,
member1_.city as city2_4_1_,
member1_.street as street3_4_1_,
member1_.zipcode as zipcode4_4_1_,
member1_.name as name5_4_1_,
delivery2_.city as city2_2_2_,
delivery2_.street as street3_2_2_,
delivery2_.zipcode as zipcode4_2_2_,
delivery2_.status as status5_2_2_
from
orders order0_
inner join
member member1_
on order0_.member_id=member1_.member_id
inner join
delivery delivery2_
on order0_.delivery_id=delivery2_.delivery_id limit ?
혹시 inner join 이라 따로 다시 조회할 이유가 없어서 스프링에서 최적화해서 따로 쿼리가 나가지 않은건가요?
답변 2
8
반갑습니다. asdkfur님^^
네 맞습니다. 내부에서 최적화를 합니다. 그래서 count 쿼리가 필요하지 않으면 호출하지 않습니다^^!
예를 들어서 페이지를 10건 단위로 하는데, 처음에 2건만 조회되면 사실 count가 2로 정해졌기 때문에 count쿼리를 호출할 필요가 없는 것이지요.
이런식으로 최대한 최적화를 시도합니다^^
최적화 로직은 다음 클래스를 참고하시면 됩니다.
org.springframework.data.repository.support.PageableExecutionUtils
감사합니다.
existsByUserIdAndProjectId vs existsByUserAndProject 중 어떤 방식이 적절할까요?
0
67
1
existsByUserIdAndProjectId vs existsByUserAndProject 중 어떤 방식이 적절할까요?
0
105
3
MemberRepository 구현체
0
56
1
pdf 표현 질문드립니다.
0
60
1
로그가 남지 않는 문제.
0
79
1
테스트 라이브러리가 강의는 junit4가 맞나요??
0
70
2
pdf 파일과 차이점이 있는 것같은데 문제 없나요?
0
71
2
@PrePersist, @PreUpdate 호출 시점 질문드립니다.
0
91
2
Sort 인터페이스는 잘 사용 안하나요?
0
52
1
스캔대상 질문드립니다.
0
45
1
하이버네이트6에서의 최적화에 이은 질문
0
82
1
save() vs saveAndFlush DB 통신 횟수
0
52
1
순수 JPA 리포지토리 코드 수정부분
0
86
2
bulk연산 후 flush하는 이유를 모르겠어요
0
150
3
bulk insert 질문입니다.
0
175
2
교만했던 것 같아요.
0
145
1
RESTful 강의는 안하시는 건지 궁금합니다.
0
145
2
동적 테이블에 대한 질문
0
85
1
영속성 전이와 연관관계
0
130
2
강의 10:25 질문
0
73
1
단건 update 질문
0
95
2
엔티티 와 도메인의 경계
0
126
1
UsernameOnlyDto 타입 type mismatch 오류
0
119
1
Projection 개념과 데이터 전달과정에 대해 질문 있습니다.
0
136
1





