Hibernate 3.2.1和查询中的EJBQL查询

Hibernate 3.2.1和查询中的EJBQL查询,hibernate,ejb,ejbql,Hibernate,Ejb,Ejbql,我试图确保hibernate 3.2.1中的EJBQL功能支持以下内容,但我的google fu让我失望了。 我发现EJB2.x中不支持嵌套查询 我是否可以将查询放入如下查询中: select count(*) from (select myField from myTable group by myField having sum(case.....) ....... ) EBJQL不支持from子句中的子查询(您可以在select和where中使用它们),因此无法执行此精确查询。

我试图确保hibernate 3.2.1中的EJBQL功能支持以下内容,但我的google fu让我失望了。 我发现EJB2.x中不支持嵌套查询

我是否可以将查询放入如下查询中:

select count(*) from 
    (select myField from myTable group by myField having sum(case.....) ....... )

EBJQL不支持
from
子句中的子查询(您可以在
select
where
中使用它们),因此无法执行此精确查询。您可以尝试重写查询,在您的情况下,以下内容应该是等效的:

通过e.myField从myEntity e组中选择计数(不同的e.myField),该计数具有。。。
或者,只需使用
createNativeQuery()
并使用原始查询,而无需在HQL中重写它。这当然破坏了可移植性


提示:如果您正在使用Eclipse,请从或市场获取Hibernate插件。它允许您直接从IDE编写和执行查询(请参阅Hibernate工具文档中的)。其他IDE也可能具有类似的功能。

EBJQL不支持
from
子句中的子查询(您可以在
选择
其中
中使用它们),因此无法执行此精确查询。您可以尝试重写查询,在您的情况下,以下内容应该是等效的:

通过e.myField从myEntity e组中选择计数(不同的e.myField),该计数具有。。。
或者,只需使用
createNativeQuery()
并使用原始查询,而无需在HQL中重写它。这当然破坏了可移植性


提示:如果您正在使用Eclipse,请从或市场获取Hibernate插件。它允许您直接从IDE编写和执行查询(请参阅Hibernate工具文档中的)。其他IDE也可以有类似的功能。

太棒了,应该可以。hibernate插件也应该很方便。谢谢太棒了,应该可以了。hibernate插件也应该很方便。谢谢