如何在其中一个字段 Mongo Db [重复] 中检索具有最大值的文档

Posted

技术标签:

【中文标题】如何在其中一个字段 Mongo Db [重复] 中检索具有最大值的文档【英文标题】:How can I retrieve document with max value in one of its fields Mongo Db [duplicate] 【发布时间】:2014-10-04 04:24:04 【问题描述】:

谁能告诉我如何在其中一个字段 Mongo Db.Using mongoTemplate Class 中检索具有最大值的文档

这是一个例子


    "_id" : "post 1",
    "author" : "Bob",
    "content" : "...",
    "page_views" : 5


    "_id" : "post 2",
    "author" : "Bob",
    "content" : "...",
    "page_views" : 9


    "_id" : "post 3",
    "author" : "Bob",
    "content" : "...",
    "page_views" : 8

所以我想要以下结果


    "_id" : "post 2",
    "author" : "Bob",
    "content" : "...",
    "page_views" : 9

页面浏览量最大的记录

【问题讨论】:

不是重复的,因为虽然没有在标题中指定,但用户特别询问了 MongoTemplate ,它是 spring-data-mongodb 并且不包含在重复链接中。请参阅***.com/questions/9933904/… 【参考方案1】:

这将是您的 mongoDB 查询,我希望您可以在您的驱动程序中实现它

db.<collection name>.find().sort('page_views':-1).limit(1);

您将获得一个长度为 1 的数组,其中包含所请求的文档。 -1 表示降序排序。 limit(1) 将文档数限制为 1。因此您将获得包含最多 page_views 数的文档。

【讨论】:

以上是关于如何在其中一个字段 Mongo Db [重复] 中检索具有最大值的文档的主要内容,如果未能解决你的问题,请参考以下文章

通过mongo中的填充字段查询[重复]

如何在 Mongo db 上按 Java 文本搜索 [重复]

如何使用 MongoRepository 接口更新 mongo db 中的特定字段?

如果mongo db中存在/不存在字段,如何向对象添加数组数据

如何在mongo shell中查看文档字段?

如何使用 java 驱动程序更新 mongo db 中的文档字段?