我有这样的查询,支持分页,
select *
from (select distinct field1
from table
where field2 = 'some_value'
and filed3 > 'somevalue'
and field4 in('somevalues')
and field5 is null order by field1)
where ROWNUM <= <page_size> ;
我怎么能在冬眠中平等地表示。我不想手工构造查询。相反,我想在冬眠中设置与上述查询匹配的条件。
最佳答案
使用条件API中的第一个结果和最大结果。链接here。
Criteria queryCriteria = session.createCriteria(YourClass.class);
queryCriteria .setProjection(Projections.distinct(Projections.property("id")));
queryCriteria.setFirstResult(10);
queryCriteria.setMaxResults(20);
queryCriteria.add(Restrictions.eq( "propertyOne", 10)); //Add restrictions here
List data = queryCriteria.list();
上面的查询将给您记录10-20