我使用JpaSpecificationExecutor,JPA 2.0,Hibernate和MSSQL,並希望建立與CriteriaBuilder以下查詢:如何根據JPA和JpaSpecificationExecutor的結果進行分組?
SELECT CURR_DATE, MAX(POSITION) FROM TOP_COMPONENT_HISTORY GROUP BY CURR_DATE
我的問題:可能嗎?如果,如何?
謝謝你圍繞這個包裝!
這是我的代碼..
表(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
服務
public Page<TopComponentHistory> findByCurrDate(ArticleSearchForm searchForm){
return topComponentHistoryRepository.findAll(TopComponentHistory.findAllGroupBy(),constructPageSpecification(searchForm.getPageNum());
}
域
public class TopComponentHistory implements Serializable {
public static Specification<TopComponentHistory> findAllGroupBy() {
How can i make query...
return ..
}
}
庫
public interface TopComponentHistoryRepository extends JpaRepository<TopComponentHistory, String>, JpaSpecificationExecutor<TopComponentHistory> {
}
我很難把你的初始查詢包裹起來。它缺少一個'FROM'子句,我不確定你想如何處理'TITLE'? – mabi 2014-09-01 12:45:24
更新後的查詢無效。它解決了'FROM'問題,但您仍然無法選擇不在'GROUP BY'子句中的原始列。你能描述一下你實際想要達到的目標嗎? – mabi 2014-09-02 08:45:16
我想按結果分組,使用JPA和JpaSpecificationExecutor。 – 2014-09-02 10:14:32