hibernate标准无限制地计算所有行,并在1个查询中获取有限制的ID

jaql4c8m  于 2021-06-30  发布在  Java
关注(0)|答案(0)|浏览(153)

我的table:动物园

id | name     | type | area
___+__________+______+___________
1  | Lion     | cat  | Africa
2  | Tiger    | cat  | Antarctica
3  | Seagull  | bird | Asia
4  | Manul    | cat  | Mars

我需要找个地方 Map<Integer, List<Integer> with将条件为键的所有行计数,并列出具有相同条件但有限制的ID。使用hql或标准/分离标准
如果条件是 type = cat 以及 limit 2 ,我需要 Map(3, List.of(1,2)) ,因为表中的3只猫和ID 1,2或2,4或1,4是通过限制选择的
其他集合甚至新类都可以收集结果。
我有

DetachedCriteria dc = DetachedCriteria.forClass(Zoo.class);
dc.add(Restriction.eq('type', 'cat');

它可以很容易地通过两个查询来实现。
限制 dc.getExecutableCriteria(getSession()).setMaxResults(2); 计数 dc.setProjection(Projections.count('id')); 在一个请求中是否可能?
用哪个对象收集答案?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题