MongoDB查询以查找2级对象元素

时间:2019-02-19 14:50:10

标签: mongodb mongoose mongodb-query

我有一个大问题,我不知道该怎么办...

我要查找的是具有Object2名称的所有对象。我有Object 2带有名称元素。

我想在Object2内的元素名称中找到所有值为X的对象。在示例中,值名称为= {"IWANTALLOBJECTSWITHTHISNAME"

Json结构。

"objects": [
        {
            "_id": "5c69a62cf9acf00d00dbc02d",
            "date": "2222-02-24T00:00:00.000Z",
            "description": "22",
            "Object1": {
                "_id": "5c69a62cf9acf00d00dbc02b",
                "date": "2222-02-24T00:00:00.000Z",
                "user": "5c30fd5890bbd24a1c46c7ee",
                "positionsObject1": [
                    {
                        "id": 1,
                        "Object2": {
                             "_id":"5c69a62cf9acf00d00dbc02c",
                             "name": "IWANTALLOBJECTSWITHTHISNAME"
                         },
                        "description": "22",
                        "value": 22
                    }
                ],
                "id": 13,
                "__v": 0
            },
            "user": "5c30fd5890bbd24a1c46c7ee",
            "id": 7,
            "__v": 0
        }
    ]

我是mongoDB的新手,这个查询真的很难。我尝试了一切。非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您可以使用dot notation指定路径:

db.col.find({ "objects.Object1.positionsObject1.Object2.name": "IWANTALLOBJECTSWITHTHISNAME" })