在我的标准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"))