2010-05-25 5 views
5

JPA/Hibernate를 사용하여 날짜 산술을 수행 할 수 있습니까? 예를 들어, 행을 만들 때를 나타내는 java.util.Date 필드가있는 엔티티가 있습니다. JPQL을 사용하여 쿼리를 수행하고 해당 필드에 날짜 산술을 포함 할 수 있습니까? 예를 들어 행의 COUNT (*)를 수행 한 다음 그 필드에서 해당 월의 GROUP BY를 수행 할 수 있습니까? 쿼리의 해당 필드에서 월 또는 연도 만 반환하는 등의 다른 기능을 수행 할 수 있습니까?JPA 날짜 산술?

답변

3

HQL은 second(...), minute(...), hour(...), day(...), month(...)year(...) 같은 날짜 표현식을 가지고 있지만, 표준 JPQL는 기능이 없습니다.

+0

JPQL과 함께 HQL을 사용하여 필요한 결과를 얻을 수 있습니까? HQL은 동일한 엔터티를 반환 할 것인가, 아니면 주석을 추가해야 할 것인가 등등? – Shadowman

+0

@Shadowman : 그렇습니다. 특수 주석이 필요하지 않습니다. 쿼리가 이식 가능하지 않을뿐입니다 (다른 공급자가 이러한 기능을 지원한다는 보장은 없습니다). –