답 일지 몰라도 답답함은 해결되길

IT

[IT] JPQL TIMESTAMP와 DATE 비교 방법

아담도라이바 2022. 3. 4. 23:15
반응형

COMPARISON TIMESTAMP and DATE in JPQL

 

개발을 하던 중 오늘 날짜에 만들어진 항목의 데이터를 업데이트 하는 기능이 필요했습니다.

그래서 오늘 날짜에 만들어진 데이터를 조회하려고 하니 날짜 컬럼 타입이 TIMESTAMP 입니다.

컬럼이 DATE 타입이라면, JPQL 에서 제공하는 CURRENT_DATE으로 검사해볼 수 있었을 것인데....

솔직히 초반에는 제공되는 [CURRENT_DATE] 조차도 잊고, 오늘 날짜를 포맷변경해서 넘겼습니다. ㅎㅎ;; 

JPQL Supported Functions

그래도 뭔가 같은 고민을 하고 만든게 있지 않을까 싶어서 시도하다가 찾아낸 방법은 아래와 같습니다.

"where date(timestamp column) = CURRENT_DATE"

@Query("SELECT p FROM projectinfo p WHERE p.projectId = :projectId AND p.projectType = :projectType AND date(p.updateTime) = CURRENT_DATE")
public List<ProjectInfo> findByProjectIdAndProjectTypeInCurrentDate(@Param("projectId") String projectId, @Param("projectType") String projectType);

더 고민하지 않았다면 싹다 조회해서 일일히 비교할뻔 했습니다.;;;

반응형