Spring 查询字段最大的文档
我有这样的数据Spring 查询字段最大的文档,spring,mongodb,mongodb-query,spring-data-mongodb,Spring,Mongodb,Mongodb Query,Spring Data Mongodb,我有这样的数据 { "UID": "a24asdb34-asd42ljdf-ikloewqr", "createdById" : 1, "name" : "name1", "createDate" : 01.14.2019, "latest" : 369 }, { "UID": "a24asdb34-asd42ljdf-ikloewqr", "createdById" : 1, "name" : "name2", "createDate" : 01.14.2019 "latest": 395 }
{
"UID": "a24asdb34-asd42ljdf-ikloewqr",
"createdById" : 1,
"name" : "name1",
"createDate" : 01.14.2019,
"latest" : 369
},
{
"UID": "a24asdb34-asd42ljdf-ikloewqr",
"createdById" : 1,
"name" : "name2",
"createDate" : 01.14.2019
"latest": 395
},
{
"UID": "a24asdb34-asd42ljdf-ikloewqr",
"createdById" : 1,
"name" : "name3",
"createDate" : 01.14.2019,
"latest" : 450
}
我需要一个查询,它选择文档的一个元素,其中字段latest比另一个文档元素中的该字段最大
Java代码
@Query(value ="[ {$sort : {latest: -1}},{$limit : 1} ]",fields = "{ 'UID' : 1, 'name' : 1, createDate : 1}")
Page<MyObject> findByCreatedById(String userId, Pageable pageable);
@Query(value=“[{$sort:{latest:-1}},{$limit:1}]”,fields=“{'UID':1,'name':1,createDate:1}”)
PageFindByCreatedById(字符串用户ID,可分页);
按照最新字段的降序排序,并将结果大小限制为1。您的意思是选择max:db.collection.find().Sort({latest:-1}).limit(1)?这与JPA API完全无关。这甚至与“SpringDataJPA”无关。它可能是“SpringDataMongoDB”,这是一个完全不同的API,但是你应该知道你正在使用什么API…@BillyFrost你知道如何将它实现为SpringDataJPA的@Query吗?你没有读过吗?您没有使用JPA API或SPRING数据JPA API(用于RDBMS数据存储…并且您没有使用RDBMS)。您可能正在使用“SpringDataMongoDB”API。但是您没有展示任何实际的Javacode@BillyFrost添加了Java代码为什么限制为2?
db.orders.find(
[
{ $sort: { latest: -1 } },
{ $limit: 1 }
]
)