带有Hibernate Query接口的ON子句

时间:2011-03-07 13:19:09

标签: hibernate

当我使用带有左外连接的On子句时,我得到了HibernateQueryException。

任何人都可以建议我是什么原因。

此致

拉​​吉

2 个答案:

答案 0 :(得分:6)

HQL不支持... JOIN ... ON ...语法,您只能JOIN实体之间定义的关系(FROM Foo foo JOIN foo.bars bar)。

如果你在任意条件下需要JOIN,你可以使用老式的FROM A a, B b WHERE a.x = b.y形式(虽然你不能以这种方式进行外连接)。否则必须使用本机SQL查询。

另见:

答案 1 :(得分:0)

您可以使用'with'子句:

from Cat as cat
left join cat.kittens as kitten
    with kitten.bodyWeight > 10.0

https://docs.jboss.org/hibernate/core/3.3/reference/en/html/queryhql.html