仅在mongodb集合中获取具有条件的第一个匹配文档

莫希特·拉蒂(Mohit Rathi)

这是我的收藏

[
    {
        _id: "585be0da13385513689f704a",
        site: "NBT",
        url: "m.nbt.com",
        label: "NBT Home",
        platform: "mobile",
        speed: 61,
        date: "2016-12-22T14:18:57.975Z"
    },
    {
        _id: "585be0da13385513689f704b",
        site: "NBT",
        url: "nbt.com",
        label: "NBT Home",
        platform: "desktop",
        speed: 75,
        date: "2016-12-22T14:15:57.975Z"
    },
    {
        _id: "585be0da13385513689f704c",
        site: "MT",
        url: "m.mt.com",
        label: "MT Home",
        platform: "mobile",
        speed: 40,
        date: "2016-12-22T14:01:57.975Z"
    },
    {
        _id: "585be0da13385513689f704d",
        site: "NBT",
        url: "m.nbt.com",
        label: "NBT Home",
        platform: "mobile",
        speed: 90,
        date: "2016-12-22T12:18:57.975Z"
    }
]

预期产量:

[
    {
        _id: "585be0da13385513689f704b",
        site: "NBT",
        url: "nbt.com",
        label: "NBT Home",
        platform: "desktop",
        speed: 75,
        date: "2016-12-22T14:15:57.975Z"
    },
    {
        _id: "585be0da13385513689f704c",
        site: "MT",
        url: "m.mt.com",
        label: "MT Home",
        platform: "mobile",
        speed: 40,
        date: "2016-12-22T14:01:57.975Z"
    },
    {
        _id: "585be0da13385513689f704d",
        site: "NBT",
        url: "m.nbt.com",
        label: "NBT Home",
        platform: "mobile",
        speed: 90,
        date: "2016-12-22T12:18:57.975Z"
    }
]

基本上,我想先匹配不同的(标签+平台)组合文档。

如您所见,label- NBT Home存在于3个文档中,但是我只想检索label + platform的唯一组合。因此,我期望移动版NBT Home和桌面版NBT Home。

请帮忙。

费利克斯

试试这个 :

db.collection.aggregate([
   {
      $group:{
         _id:{
            label:"$label",
            platform:"$platform"
         },
         site:{
            $first:"$site"
         },
         url:{
            $first:"$url"
         },
         speed:{
            $first:"$speed"
         }
      }
   }
])

输出:

{
    "_id" : {
        "label" : "MT Home",
        "platform" : "mobile"
    },
    "site" : "MT",
    "url" : "m.mt.com",
    "speed" : 40
}
{
    "_id" : {
        "label" : "NBT Home",
        "platform" : "desktop"
    },
    "site" : "NBT",
    "url" : "nbt.com",
    "speed" : 75
}
{
    "_id" : {
        "label" : "NBT Home",
        "platform" : "mobile"
    },
    "site" : "NBT",
    "url" : "m.nbt.com",
    "speed" : 61
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从带有条件(第一个字符)的仅SQL项填充ListBox

来自分类Dev

AngularJS-有条件地将使用ng-style的样式应用于ng-repeat中的第一个元素

来自分类Dev

在另一个表中具有条件的Phalcon模型find()

来自分类Dev

MongoDB在聚合查询中获取第一个和最后一个文档

来自分类Dev

如何在“组件”页面中有条件地设置第一个InstType

来自分类Dev

如果/否则:仅在R中不满足第一个条件后,才在设置的距离内选择第一个匹配记录

来自分类Dev

具有条件的MongoDB项目阵列文档大小

来自分类Dev

从MongoDB中的所有文档中获取数组字段的第一个元素的总和

来自分类Dev

有条件地删除第一个字符

来自分类Dev

从范围中获取第一个不匹配条件

来自分类Dev

如何在PostgreSQL中获取有条件的最后一个值?

来自分类Dev

具有$ or运算符的Mongodb updateOne始终更新集合中的第一个文档,即使没有匹配项也是如此

来自分类Dev

有条件地使用辅助表中的另一个值,否则使用第一个表中的值

来自分类Dev

从带有条件(第一个字符)的仅SQL项填充ListBox

来自分类Dev

如何从一个表中获取所有记录,并且仅从具有条件的联接表中获取记录

来自分类Dev

有条件地包含CSS,但不能作为最后(或第一个)CSS

来自分类Dev

有条件的Cfloop代码在第一个循环中放置AND

来自分类Dev

有没有使用“更新”功能给定查询和排序选项的方式来更新MongoDB集合中的第一个文档的方法?

来自分类Dev

有条件地将列表文档从一个集合批量移动到另一个集合

来自分类Dev

在另一个单元格中具有条件的SUMIF函数

来自分类Dev

使用findOne()MongoDB从集合中检索第一个文档

来自分类Dev

从表中获取数据时,仅在第一个键上匹配

来自分类Dev

有条件地格式化列中值的第一个实例

来自分类Dev

MongoDB:在一个文档中获取所有集合

来自分类Dev

计算MongoDB集合中具有条件的项目数

来自分类Dev

Javascript:字典数组,从一个具有条件的字典中获取所有键值对

来自分类Dev

我想要第一个和第二个有条件的插入值

来自分类Dev

ReactiveX 第一个在 rx-android 中有条件的运算符

来自分类Dev

Group by使用pymongo仅返回mongodb中的第一个匹配文档,如何检索所有匹配的文档?

Related 相关文章

  1. 1

    从带有条件(第一个字符)的仅SQL项填充ListBox

  2. 2

    AngularJS-有条件地将使用ng-style的样式应用于ng-repeat中的第一个元素

  3. 3

    在另一个表中具有条件的Phalcon模型find()

  4. 4

    MongoDB在聚合查询中获取第一个和最后一个文档

  5. 5

    如何在“组件”页面中有条件地设置第一个InstType

  6. 6

    如果/否则:仅在R中不满足第一个条件后,才在设置的距离内选择第一个匹配记录

  7. 7

    具有条件的MongoDB项目阵列文档大小

  8. 8

    从MongoDB中的所有文档中获取数组字段的第一个元素的总和

  9. 9

    有条件地删除第一个字符

  10. 10

    从范围中获取第一个不匹配条件

  11. 11

    如何在PostgreSQL中获取有条件的最后一个值?

  12. 12

    具有$ or运算符的Mongodb updateOne始终更新集合中的第一个文档,即使没有匹配项也是如此

  13. 13

    有条件地使用辅助表中的另一个值,否则使用第一个表中的值

  14. 14

    从带有条件(第一个字符)的仅SQL项填充ListBox

  15. 15

    如何从一个表中获取所有记录,并且仅从具有条件的联接表中获取记录

  16. 16

    有条件地包含CSS,但不能作为最后(或第一个)CSS

  17. 17

    有条件的Cfloop代码在第一个循环中放置AND

  18. 18

    有没有使用“更新”功能给定查询和排序选项的方式来更新MongoDB集合中的第一个文档的方法?

  19. 19

    有条件地将列表文档从一个集合批量移动到另一个集合

  20. 20

    在另一个单元格中具有条件的SUMIF函数

  21. 21

    使用findOne()MongoDB从集合中检索第一个文档

  22. 22

    从表中获取数据时,仅在第一个键上匹配

  23. 23

    有条件地格式化列中值的第一个实例

  24. 24

    MongoDB:在一个文档中获取所有集合

  25. 25

    计算MongoDB集合中具有条件的项目数

  26. 26

    Javascript:字典数组,从一个具有条件的字典中获取所有键值对

  27. 27

    我想要第一个和第二个有条件的插入值

  28. 28

    ReactiveX 第一个在 rx-android 中有条件的运算符

  29. 29

    Group by使用pymongo仅返回mongodb中的第一个匹配文档,如何检索所有匹配的文档?

热门标签

归档