如何获取MongoDB中字段的最大值

时间:2016-03-14 09:59:19

标签: mongodb

像:

{id:4563214321,updateTime:long("124354354")}

总会有新的集合进入数据库,因此我希望始终获取最新更新的文档,即最大的更新时间。如何设计shell脚本?提前谢谢。

2 个答案:

答案 0 :(得分:6)

您可以结合使用限制和排序来实现此目标。

db.collectionName.find({}).sort({"updateTime" : -1}).limit(1)

这将根据更新时间对所有字段进行排序,然后仅返回一个最大值。

我建议在此字段中添加索引以提高性能。

答案 1 :(得分:0)

这是一个重复的问题,您可以在此链接中找到答案 Using findOne in mongodb to get element with max id

像这样使用,

db.collection.find().sort({updateTime:-1}).limit(1).pretty()

作为findOne,您可以使用以下语法执行此操作:

db.collection.findOne({$query:{},$orderby:{_updateTime:-1}})