我正在尝试使用 HQL 对两个表的特定列使用 FULL JOIN
List<B> expiredMacs = getHibernateTemplate()
.find("from B b join A a where b.type != 'USER' and (b.id != a.id or (b.name == a.name and b.value != a.value))");
但它在第 1 行第 325 列附近抛出错误意外 token :=
知道出了什么问题吗?
在 SQL 中
SELECT B.* FROM B b, A a WHERE b.type != 'USER' AND (b.id != a.id or (b.name == a.name and b.value != a.value))
最佳答案
据我所知,==
不允许,您应该使用 =
。请参阅HQL documentation .
!=
允许,但最好使用 <>
因为它更接近标准 SQL。
关于java - Hibernate HQL 中的完全加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15020837/