강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

dreamjr님의 프로필 이미지
dreamjr

작성한 질문수

스프링 데이터 JPA

스프링 데이터 JPA 6. Update 쿼리

entity 중 null이 아닌 필드만 update 할 방법이 있을까요?

작성

·

1.2K

0

안녕하세요, 강의 덕분에 너무 큰 도움이 되었습니다.
감사합니다. :)
 
Repository의 save() 메소드를 실행하던지, @Query를 사용하던지 해서 update 문을 실행할 경우, null이 아닌 필드만 업데이트하는 방법이 있을지요?
 
예를 들면 Post 라는 entity에 id, name, email, description 필드가 있을 경우, name 만 값이 있고 나머지는 null인 경우 name만 update 하고 싶다면 어떻게 하면 될까요?
 
추가 select 없이 하는 방법이 있을지 여쭤봅니다.
 
다시 한 번 감사 드립니다. :)

퀴즈

Spring Data 프로젝트 구조에 대한 설명 중 가장 올바른 것은 무엇일까요?

Spring Data는 Spring Data Commons와 Spring Data JPA와 무관한 독립 프로젝트입니다.

Spring Data Commons는 공통 기능을 제공하고 Spring Data JPA는 JPA 특정 기능을 추가합니다.

Spring Data Commons는 Spring Data JPA에 종속적인 하위 프로젝트입니다.

Spring Data JPA는 Spring Data Commons의 모든 기능을 포함하고 있습니다.

답변 1

0

백기선님의 프로필 이미지
백기선
지식공유자

@Query를 사용해서는 어려울 것 같고, 동적인 쿼리를 작성해야 하는데요. 원본 데이터를 확인하고 그 중에서 null이 아닌 것만 업데이트는 하는 쿼리를 런타임 중에 동적으로 생성하려면 Criteria나, JPQL (또는 QueryDSL을 이용해서)을 사용해서 쿼리를 만들어낸 다음에 실행하도록 해야 할 것 같습니다.

dreamjr님의 프로필 이미지
dreamjr

작성한 질문수

질문하기