我有这样的查询:
Query query = session.createQuery("from table1 c where c.colummewhatever =:value and (select p.colummewhatever from table2 p where c.fkidcolumme=p.idcolumme) in (:listPColummewhatever) ");
有没有办法将 in
限制转换为 Criteria
?
最佳答案
在我看来,可以使用简单的连接重写此查询:
from Table1 c inner join c.table2 p
where c.colummewhatever =:value
and p.colummewhatever in (:listPColummewhatever)
在 Criteria 中翻译这个 HQL 查询现在更容易了。
这当然假设您在 Table1 和 Table2 之间有一个关联,但您应该有一个。
关于java - 将 HQL 'in' 限制转换为条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7308047/