我有这样的查询:

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之间有关联,但是应该有一个关联。

10-07 22:37