数组内的mongodb查询对象

时间:2019-07-02 19:46:54

标签: mongodb

所以我有一个名为Transaction的集合,其结构如下所示

  {
        "_id": "1",
        "type": "purchase",
        "amount": 11.8,
        "relatedObjects": [
            {
                "eventId": "123131313131322"
            }
        ],
       "paymentMethod" : "method1"
    }

我想根据paymentMethod和eventId查询。因此,我正在执行以下操作,但无法正常工作。

db.Transaction.find({ "paymentMethod": "method1"});

这就是我处理“ method1”的所有事务的方式,但是我不确定如何查询相关对象内的eventId。我尝试过类似的

db.Transaction.find({"paymentMethod": "method1", "relatedObjects[0].eventId" : "123131313131322" })

我似乎并不希望它起作用,但是我不知道如何查询数组中的对象。

1 个答案:

答案 0 :(得分:0)

该死,我不得不第三次阅读文档,对不起, 就像

{
        "paymentMethod": "method1", 
        "relatedObjects" : {
            $elemMatch : {
                "eventId": "13213213212131321321"
            }
        }
}