【问题标题】:How to search nested array with MongoDB?如何使用 MongoDB 搜索嵌套数组?
【发布时间】:2017-08-22 03:33:03
【问题描述】:

我正在尝试过滤数组并仅返回具有“管理员”角色的对象。

但是,包含角色的字段嵌套在数组的多个级别下。为了获取值,正确的 MongoDB 语法是什么?

下面是它的外观示例。它去角色 > 公司名称 > 0 > 价值

        _id:"Pgxoyv"
        createdAt:"Fri Aug 18 2017"
        roles: {} 1 key
             Company Name: [] 1 item
                  0:"admin"

我尝试过过滤,但“公司名称”之间的空格也会引发错误。任何帮助,将不胜感激。到目前为止,这是我尝试过的,但这没有返回任何值:

Meteor.users.find({
            roles: 'admin'
        }).fetch();

【问题讨论】:

  • 你能举一个你正在使用的实际 json 文档的例子吗?

标签: javascript arrays mongodb


【解决方案1】:

你可以试试

Meteor.users.find({
        roles.companyName: 'admin'
    }).fetch();

【讨论】:

    【解决方案2】:

    假设您的数据如下所示:

    {
        "roles": {
            "Company Name": [ 
                "admin"
            ]
        }
    }
    

    你可以做一个

    Meteor.users.find({"roles.Company Name": "admin"})
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-02
      • 2016-01-13
      • 2015-06-29
      • 1970-01-01
      • 2013-08-10
      • 1970-01-01
      • 2018-05-06
      • 1970-01-01
      相关资源
      最近更新 更多