在自定义查询中获取错误““选择新”查询不允许使用ResultTransformer”

时间:2019-09-09 13:41:06

标签: spring hibernate spring-boot

我写了一个查询,它给出了这个错误:

ResultTransformer is not allowed for 'select new' queries

不确定为什么会这样。

StringBuilder q = new StringBuilder();
q.append(" SELECT  DISTINCT new map(p as plan, pei.stateCodeId as state)  ");
q.append(" FROM  PlanEligibilityIndex pei ");

上面的查询是我写新选择的地方,它给出了此错误跟踪。

Caused by: org.hibernate.QueryException: ResultTransformer is not allowed for 'select new' queries.
    at org.hibernate.loader.hql.QueryLoader.checkQuery(QueryLoader.java:509) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
    at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:503) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
    at org.hibernate.hql.internal.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:395) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
    at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:220) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
    at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1508) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
    at org.hibernate.query.internal.AbstractProducedQuery.doList(AbstractProducedQuery.java:1537) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
    at org.hibernate.query.internal.AbstractProducedQuery.list(AbstractProducedQuery.java:1505) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
    ... 143 common frames omitted

1 个答案:

答案 0 :(得分:1)

从选择查询中删除DISTINCT对我有用。