我正在尝试确保hibernate 3.2.1中的EJBQL功能支持以下内容,但我的google-fu失败了。我所发现的是EJB2.x不支持嵌套查询
我可以将查询放在查询中,如下所示:
select count(*) from
(select myField from myTable group by myField having sum(case.....) ....... )发布于 2012-10-11 05:03:30
EBJQL不支持from子句中的子查询(您可以在select和where中使用它们),因此不能执行这个确切的查询。您可以尝试重写查询,在您的示例中,以下内容应该是等效的:
select count(distinct e.myField) from myEntity e group by e.myField having ...或者,只需使用createNativeQuery()并使用原始查询,而无需在HQL语言中重写它。这当然破坏了可移植性。
提示:如果你使用的是Eclipse,可以从http://www.jboss.org/tools或marketplace获得Hibernate插件。它允许您直接从集成开发环境编写和执行查询(请参阅Hibernate工具文档中的query prototyping )。其他IDE也可以具有类似的功能。
https://stackoverflow.com/questions/12827479
复制相似问题