使用休眠标准获得第二高的价值

Getting second highest value using hibernate criteria

我有应用程序历史 ID,我想使用条件获取第二高的历史 ID。目前我只能使用下面显示的代码获得最低或最高值。

criteria.addOrder(Order.desc("historyId"));
criteria.setMaxResults(1);

如果有人能指导我如何使用休眠标准获得第二高的价值,我将不胜感激?

您可以使用 setFirstResult 方法进行偏移

criteria.addOrder(Order.desc("historyId"));
criteria.setFirstResult(1);
criteria.setMaxResults(1);

这解决了问题