我正在尝试从最高年龄+名称的表中获取记录
Criteria criteria = session
.createCriteria(Person.class)
.setProjection(Projections.max("age"));
Integer maxAge = (Integer)criteria.uniqueResult();
上面的代码给了我整个表中的最高年龄,而我只想在人名=“约翰”的地方获得最高年龄
我怎样才能做到这一点?
之后我尝试以这种方式添加标准
Criteria critNew = session
.createCriteria(Person.class);
critNew.add(Restrictions.eq("personName","john"));
critNew.add(Restrictions.eq("age", maxAge));
但通过这种方式,它只会搜索 maxAge 是“整个表中的最高年龄”的 john
例如,如果整个表中的 maxAge 为 50。并且有 3 个名为“john”的人年龄为“10”、“20”、“30”,我的代码将不起作用
请推荐 谢谢