Critera API JPA中的Aggregate (sum,max,avg)函数



在我的标准API查询中,我查询了表的三列,下面的查询有效。

cq.multiselect (root.get("点"). get (" id "), root.get(球员). get("标识"),root.get("金额")),

,但当我想要使用以下查询的列数量的总和,它给出了一个sql错误。查询是

cq.multiselect (root.get("点"). get (" id "), root.get(球员). get("标识"),cb.sum (root.get("金额"))),

我得到的错误是。

{" id ":"6","结果":空,"错误":" r nInternal例外:com.sap.dbtech.jdbc.exceptions.jdbc40。SQLSyntaxErrorException: [-8017] (at 8): Column must be group Column:IDr error Code: -8017rn

请帮我解决这个问题,因为我已经被这个问题困了好几个小时了。由于

消息告诉您在查询中需要一个group by子句。select子句中的每一列(聚合函数的结果除外)必须在group by子句中:

criteriaQuery.groupBy(root.get("point").get("id"), 
                      root.get("player").get("userid")) 

最新更新