当前位置: 首页 > 编程笔记 >

如何获取MongoDB中不同元素的最大值

潘自强
2023-03-14
本文向大家介绍如何获取MongoDB中不同元素的最大值,包括了如何获取MongoDB中不同元素的最大值的使用技巧和注意事项,需要的朋友参考一下

要获取不同元素的最大值,请在MongoDBgregation()中使用$sort和$group。让我们创建一个包含文档的集合-

> db.demo750.insertOne({id:101,value:50});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eae74b2a930c785c834e566")
}
> db.demo750.insertOne({id:102,value:40});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eae74c8a930c785c834e567")
}
> db.demo750.insertOne({id:101,value:110});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eae74dba930c785c834e568")
}

在find()方法的帮助下显示集合中的所有文档-

> db.demo750.find();

这将产生以下输出-

{ "_id" : ObjectId("5eae74b2a930c785c834e566"), "id" : 101, "value" : 50 }
{ "_id" : ObjectId("5eae74c8a930c785c834e567"), "id" : 102, "value" : 40 }
{ "_id" : ObjectId("5eae74dba930c785c834e568"), "id" : 101, "value" : 110 }

以下是查询以获取MongoDB中不同元素的最大值-

> db.demo750.aggregate([
...    {
...       $sort: { value: -1 }
...    },
...    {
...       $group: {
...          _id: "$id",
...          value: { $first: "$value" }
...       }
...    },
...    {
...       $project: {
...          id: "$_id",
...          value: 1
...       }
...    }
... ])

这将产生以下输出-

{ "_id" : 102, "value" : 40, "id" : 102 }
{ "_id" : 101, "value" : 110, "id" : 101 }

 类似资料:
  • 本文向大家介绍如何在MongoDB中获取具有最大ID的元素?,包括了如何在MongoDB中获取具有最大ID的元素?的使用技巧和注意事项,需要的朋友参考一下 要获得具有最大id的元素,可以使用方法。为了理解上述概念,让我们用文档创建一个集合。查询如下- 在method的帮助下显示集合中的所有文档。查询如下- 以下是输出- 这是获取具有最大id的元素的查询- 以下是具有最大id的记录的输出-

  • 我正在尝试获取给定数组中的最大元素,以下是要求: > var obj={key:[1,2,4]}; 有人能给我解释一下为什么当我把 在IF函数的末尾,我得到了错误:如果属性不存在,应该返回未定义。但是当我把它放在IF函数的开头时,它毫无问题地通过了。

  • 我试图从mongo集合中检索一个元素,即具有greatest _id字段的元素。我知道这可以通过查询: 但它似乎有点不优雅,我想知道是否有一种方法可以使用findOne()获取特定元素 注意:我想这样做是因为,根据我在ObjectId中读到的内容,第一个字节对应于从Epoch开始的毫秒,因此,插入的最后一个元素将具有最大的_id。有没有其他方法可以检索插入到集合中的最后一个元素?

  • 问题内容: 我正在尝试为多维数组中的特定键选择最大值。我无法“找到”有问题的钥匙… 因此,数组(比我在这里发布的要冗长得多) 我试图在整个数组中找到最大的“ dnum”值,因此在此示例中,$ max =2。我知道max函数允许我执行此操作,但是我不确定如何引用dnum。元素而不将整个对象放入foreach循环中,如果我这样做了,那么max不会成为要使用的函数,对吗? 因此,我无法完全做到这一点:

  • 问题内容: 我有一个二维NumPy数组。我知道如何获取轴上的最大值: 如何获得最大元素的索引?我想代替输出。 问题答案:

  • 问题内容: 我有一个包含以下内容: 现在我所知道的只是对象名称(统计信息), 不知道 它是 元素编号 还是它的 元素名称 ,因此,有一种方法可以解析该对象,以便我可以获取它的元素并进行处理(例如,约翰罗斯)? 问题答案: 为了以动态方式获取这些项目: