How to group the result using JPA and JpaSpecificationExecutor?
I am using JpaSpecificationExecutor, JPA 2.0, Hibernate and MSSQL and want to build the following query using CriteriaBuilder:
SELECT CURR_DATE, MAX(POSITION) FROM TOP_COMPONENT_HISTORY GROUP BY CURR_DATE
My question is, is it possible? And if, how?
Thanks for thinking this over!
This is my code.
Table (TOP_COMPONENT_HISTORY)
1 ARC_ID varchar NO
2 CURR_DATE varchar NO
3 REG_DATE datetime2 YES 7
4 APPLY_DATE datetime2 YES 7
5 POSITION int YES 10 0
6 REG_USER_ID varchar NO
7 MOD_USER_ID varchar NO
Service
public Page<TopComponentHistory> findByCurrDate(ArticleSearchForm searchForm){
return topComponentHistoryRepository.findAll(TopComponentHistory.findAllGroupBy(),constructPageSpecification(searchForm.getPageNum());
}
Domain
public class TopComponentHistory implements Serializable {
public static Specification<TopComponentHistory> findAllGroupBy() {
How can i make query...
return ..
}
}
Repository
public interface TopComponentHistoryRepository extends JpaRepository<TopComponentHistory, String>, JpaSpecificationExecutor<TopComponentHistory> {
}
+4
source to share
1 answer