【发布时间】:2016-01-19 16:26:33
【问题描述】:
我有与previously asked 非常相似的问题。 除了在我的情况下查询即将找到多个 sum()
public interface IQuotaRepository extends JpaRepository<QuotaDao, Long>, JpaSpecificationExecutor<QuotaDao> {
@Query( "select new ca.quota.kpi.model.dto.TotalDto(sum(q.value1), sum(q.value2), sum(q.value3), sum(q.value4), "
+ "sum(q.value5), sum(q.value6), sum(q.value7), sum(q.value8), "
+ "sum(q.value9), sum(q.value10), sum(q.value11), sum(q.value12)) from QuotaDao q")
public TotalDto sumQuota();//Specification<QuotaDao> spec
@Query( "select new ca.quota.kpi.model.dto.TotalDto(sum(q.value1), sum(q.value2), sum(q.value3), sum(q.value4), "
+ "sum(q.value5), sum(q.value6), sum(q.value7), sum(q.value8), "
+ "sum(q.value9), sum(q.value10), sum(q.value11), sum(q.value12)) from QuotaDao q")
public TotalDto sumQuotaWithSpec(Specification<QuotaDao> spec);
}
- sumQuota() 工作正常
- sumQuotaWithSpec(Specification spec) 抛出一个 QueryParameterException:位置超出了声明的序数参数的数量。请记住,序数参数是基于 1 的!职位:1
我希望重用“规范规范”来过滤来自网格控件的各种参数的结果。
您能否建议任何解决方案或替代方案
【问题讨论】:
-
你得到答案了吗,我也面临同样的问题。
-
@Anchit Pancholi 。我已经发布了答案
标签: hibernate jpa spring-data-jpa