inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

주문 조회 V5: JPA에서 DTO 직접 조회 - 컬렉션 조회 최적화

in :orderids 일 때 DB 쿼리에 대하여 (사소함)

해결된 질문

393

relate16

작성한 질문수 29

1

사소한 것 같은데 호옥시나 해서 질문합니다.

 

List<OrderQueryDto> orderDtos = findOrderQueryDtos(); 

List<Long> orderIds = orderDtos.stream().map(o -> o.getOrderId()).collect(Collectors.toList());

       

List<OrderItemQueryDto> orderItemDtos = em.createQuery("select new jpabook.jpashop.repository.order.query" +

        ".OrderItemQueryDto(oi.order.id, i.name, oi.count, oi.orderPrice)" +

        " from OrderItem oi join oi.item i where oi.order.id in :orderIds",

    OrderItemQueryDto.class).setParameter("orderIds", orderIds).getResultList();

 

일 때,

orderIds = [4, 11] 인데 

이걸 

in :orderIds에 넣으면 

 

[4, 11]이 아니라 

내부에서 자동으로 (4, 11)로 괄호가 바뀌어서 DB에 날라가는 거 맞나요 ?

 

List 구조를 보고, 쿼리를 보면 그런 것 같은데 혹시나 혹시나 해서 

사소하게 물어봅니다 :]

 

java spring JPA spring-boot

답변 1

1

OMG

안녕하세요. relate16님, 공식 서포터즈 OMG입니다.

 

JQPL에서 컬렉션 in절 관련 질문이신것 같습니다.

질문 내용과 관련하여 스택오버플로우의 3개의 글을 확인하였는데요,

확인해보니 숙지하고 계신 내용대로 사용하시면 될 것 같습니다.

아래의 링크를 참고해주세요.

 

 

 

참고

java - Setting a parameter as a list for an IN expression - Stack Overflow

sql - JPQL IN clause: Java-Arrays (or Lists, Sets...)? - Stack Overflow

java - Adding IN clause List to a JPA Query - Stack Overflow

 

 

감사합니다.

0

relate16

앗 참고할 수 있는 사이트도 하나 배웠네요 

정말 감사합니다 :]

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

0

32

2

강의 관련 외 질문입니다.

0

91

2

SpringBoot4 + Hibernate7 모듈 등록 방법 공유

1

111

1

BeanCreationException

0

104

3

Update 후 UpdateMemberResponse 매핑할 때

0

64

1

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

0

109

2

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

0

77

1

Query Dsl Q파일 질문입니다.

0

92

1

루트 쿼리라는것은

0

68

1

메서드를 분리하는 기준

0

76

1

findAllWithMemberDelivery 메서드 질문드립니다.

0

123

3

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

0

97

2

fetch join과 영속화와 OSIV의 관계

0

100

2

Distinct 사용 전 결과에 대한 의문

0

124

2

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

0

65

1

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

0

82

2

dto 필드 속 엔티티 여부

0

67

1

뷰템플릿 사용 시

0

86

2

Result 클래스 관련 질문

0

59

1

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

0

91

1

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

0

142

1

OSIV ON 상태일 때

0

102

1

fetch join VS fetch join 페이징 궁금증

0

192

2

양방향 연관관계 알아보는 법?

0

113

1