Bạn có thể tìm thấy "đối tượng có giá trị trường lớn nhất" trong spring-data-mongodb. Mongo sẽ tối ưu hóa kết hợp sắp xếp / giới hạn NẾU trường sắp xếp được lập chỉ mục (hoặc trường @Id). Nếu không thì nó vẫn khá tốt vì nó sẽ sử dụng thuật toán top-k và tránh sắp xếp toàn cục ( doc sắp xếp mongodb) . Đây là từ ví dụ của Mkyong nhưng tôi thực hiện việc sắp xếp trước và đặt giới hạn là một giây.
Query query = new Query();
query.with(new Sort(Sort.Direction.DESC, "idField"));
query.limit(1);
MyObject maxObject = mongoTemplate.findOne(query, MyObject.class);