select()가 아닌 selectOne()을 사용하면 fetchJoin을 사용하지 못하나요?
안녕하세요. 강의 잘 듣고 있습니다 :)
exists 기능을 구현하고 있는데, fetchJoin을 사용해봤습니다. 그저 데이터의 유무만 판단하면 됐기에 selectOne() 으로 조회를 했는데 실패하네요 ㅠㅠ 하지만 이후 fetchJoin()을 제거하니 잘 동작하는 모습을 확인했습니다.
// 성공하는 코드
@Override
public boolean existsByReviewEntity(ReviewEntity reviewCond) {
final Integer result = queryFactory
.selectOne()
.from(reviewCommentEntity)
.innerJoin(reviewCommentEntity.reviewEntity, reviewEntity)
.where(reviewEq(reviewCond))
.fetchFirst();
return result != null;
}
// 실패하는 코드
@Override
public boolean existsByReviewEntity(ReviewEntity reviewCond) {
final Integer result = queryFactory
.selectOne()
.from(reviewCommentEntity)
.innerJoin(reviewCommentEntity.reviewEntity, reviewEntity).fetchJoin()
.where(reviewEq(reviewCond))
.fetchFirst();
return result != null;
}
제 생각에는 두 가지 이유가 추측되는데요,
1. selectOne 이랑 fetchJoin의 실행 순서(?)
2. select 1 을 하면 특정 필드를 가져오는 것이 아니기 때문에 fetchJoin이 불가능(?)
열심히 구글을 찾아봐도 만족스러운 답을 찾지 못했고, 두루뭉실하게 의문만 남아있는 상태네요..
도움 주시면 감사하겠습니다 !!
짤막한 힌트도 좋습니다 :)
SpringBoot 4.X에서의 Querydsl 설정
0
156
2
querydsl 오픈소스에 대한 질문
1
101
1
예제에서의 카운트 쿼리에서 join문과 where문은 필요없지 않나요?
0
127
1
Querydsl 6.X버전에 대해서 어떻게 생각하시나요?
0
348
2
여러 테이블 조인하여 통계치를 구하고자 할 때 어떤 방법이 더 효율적일까요
1
86
1
fetchResults()는 더이상 권장되지 않는다는데 맞나요?
0
172
1
querydsl sum() 메서드 없어요.
0
169
2
build 디렉터리 생성
0
152
2
자바 ORM 표준 JPA 프로그래밍 - 기본편 듣고 바로 학습해도 괜찮을까요?
0
122
2
현재 Querydsl에서 from절 서브쿼리를 지원하나요?
0
99
1
오타 제보 드립니다.
0
79
2
벌크 연산과 flush, clear
0
84
1
Run As Intellij 로 변경시 Q타입 import 불가
0
95
1
QHello import하기 문제 발생
0
157
2
등록된 함수 보는법(H2Dialect) 질문
0
76
2
5.0부터 Querydsl은 향후 fetchCount() , fetchResult() 를 지원하지 않기로 결정했다고 하는데 이에 맞는 강의
1
208
2
[환경설정 PDF 부트 3.0이후 설명 질문] build.gradle에 compileQuerydsl을 정의하지 않은 상태에서 Gradle->Tasks->other->compileQuerydsl을 클릭하라고 하는 이유가 무엇인가요??
1
213
1
querydsl 설정 문제
0
228
2
quey dsl 설정부분
0
168
2
count 쿼리 관련 질문입니다!
0
79
1
stringtemplate를 이용하여 where절 검색 방법 질문 드립니다.
0
98
1
답변부탁드리겠습니다.
0
95
2
(OrderSpecifier)관련 내용 어디있을가요
0
68
1
중급문법 벌크연산에서
0
85
2





