在JPA Criteria Query中使用别名

时间:2015-05-28 10:00:10

标签: java jpa

我遇到了JPA Criteria Query的问题,尤其是别名问题。

这是我的一段代码:

Root<Evento> root = query.from(Evento.class);
Join<Evento, DataEvento> dataNode = root.join(Evento_.date);
query.where(pred).multiselect(dataNode.get(DataEvento_.evento), builder.least(dataNode.get(DataEvento_.dataDa)).alias("minData")).groupBy(dataNode.get(DataEvento_.eventoId));
return query.orderBy(builder.desc(dataNode.get(DataEvento_.dataDa).get("minData")));

我想执行此查询:

select MIN(de.data_da) as minData, de.id_evento from exlt_data_evento de inner join exlt_evento e on de.id_evento = e.id group by de.id_evento order by minData

结果是以下错误:

java.lang.IllegalStateException: Illegal attempt to dereference path source [null.dataDa] of basic type

按顺序,我需要获得“minData”,这是在select条件中创建的别名。

0 个答案:

没有答案