mongodb subelement querying

后端 未结 3 1719
醉话见心
醉话见心 2021-01-19 15:38

here is the example

> db.test.insert({ name: \'test\', values: [ { check: true }, { check: false } ] })
> db.find({ values.check: true })[0]

3条回答
  •  被撕碎了的回忆
    2021-01-19 15:59

    You can use the $ projection operator to include just the first values array element that matched the query:

     db.test.find({ 'values.check': true }, {name: 1, 'values.$': 1})
    

    returns:

    {
        "_id": ObjectId("50e22046dc278908f3a38a8e"), 
        "name": "test", 
        "values": [ { "check": true } ] }
    

提交回复
热议问题