inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

querydsl 의존관계 없는 left join 문의

1036

ljd109

작성한 질문수 1

1

안녕하세요!

실무에서 jpa를 쓰게 되서 강사님의 책과 강의를 번갈아 보면서 열심히 개발하던 중에 궁금한 점이 있어 문의드립니다.

쓰다보니 query dsl이 참 편하더라구요!

그런데 연관관계 없는 두 개 entity를 조인해서 데이터를 조회해오고 싶은데,

아래와 같이 쿼리를 작성하니 실행 중에 QuerySyntaxException이 발생합니다.

 

List<HistoryDto> historyList = queryFactory
.select(Projections.fields(HistoryDto.class,
pmntHistoryEntity.approvalNo,
pmntHistoryEntity.approvalDate,
pmntHistoryEntity.cancelType,
pmntHistoryEntity.trxId,
pmntHistoryEntity.trxReqDate,
creditCardEntity.cardName,
creditCardEntity.cardNumber
))
.from(pmntHistoryEntity)
.leftJoin(creditCardEntity).on(pmntHistoryEntity.cardToken.eq(creditCardEntity.cardToken))
.where(
eqUserId(dto.getUserId()),
eqOrderId(dto.getOrderId())
)
.fetch();

exception = QuerySyntaxException: begin 0, end -1, length 19 

 

queryDsl에서 연관 관계 없어도 on 절을 통해 join이 가능한 것으로 알고 있는데 projection과 호환이 안되는 걸까요?

하루종일 구글링을 해도 나오질 않네요.. 혹시 알고 계시다면 답변 부탁드립니다 ㅠ_ㅠ

querydsl spring java spring-boot JPA

답변 2

0

은목

혹시 해결되셨나요?

0

김영한

안녕하세요. ljd109님

조인 문법이 잘못되었습니다.

JPQL의 조인 문법을 다시 공부해보시면 이해가 되실거에요.

감사합니다.

0

hwajo0

안녕하세요! ㅠㅠ 봐도 잘 모르겠는데 혹시 힌트 좀 주실 수 있을까요?

0

김영한

leftJoin(creditCardEntity) 이 부분이 잘못되었습니다.

SpringBoot4 버전 Hibernate5JakartaModule 라이브러리 오류

0

39

1

@JsonIgnore 이후 Internal Server Error가 발생하지 않습니다.

0

66

3

강의 관련 외 질문입니다.

0

104

2

SpringBoot4 + Hibernate7 모듈 등록 방법 공유

2

122

1

BeanCreationException

0

109

3

Update 후 UpdateMemberResponse 매핑할 때

0

71

1

트랜잭션을 사용 안 할 때 커넥션은 언제 가져오나요?

0

123

2

페이징 + 검색조건 관련해서 질문드립니다.

0

89

1

Query Dsl Q파일 질문입니다.

0

103

1

루트 쿼리라는것은

0

76

1

메서드를 분리하는 기준

0

90

1

findAllWithMemberDelivery 메서드 질문드립니다.

0

140

3

연관관계 매핑을 안 쓸 경우, 사용해야 하는 전략

0

116

2

fetch join과 영속화와 OSIV의 관계

0

116

2

Distinct 사용 전 결과에 대한 의문

0

136

2

레포지토리 계층에서의 트랜잭션에 대한 의문

0

73

1

영속성 컨텍스트 생명주기의 신기한 부분이 있습니다.

0

96

2

dto 필드 속 엔티티 여부

0

81

1

뷰템플릿 사용 시

0

95

2

Result 클래스 관련 질문

0

68

1

@PostConstruct 프록시 관련 질문드립니다

0

100

1

DTO 대신 Form 사용은 안되나요?

0

148

1

OSIV ON 상태일 때

1

108

1

fetch join VS fetch join 페이징 궁금증

0

209

2