Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays MongoDB-查找多个属性在同一数组元素中匹配条件的文档_Arrays_Mongodb_Nosql_Conditional Statements_Element - Fatal编程技术网

Arrays MongoDB-查找多个属性在同一数组元素中匹配条件的文档

Arrays MongoDB-查找多个属性在同一数组元素中匹配条件的文档,arrays,mongodb,nosql,conditional-statements,element,Arrays,Mongodb,Nosql,Conditional Statements,Element,文件: { "_id" : ObjectId("5c4dd63bd76f061ef0dbcf28"), "fruits" : [ { "color" : "red", "name" : "strawberry" }, { "color" : "green", "name" : "cucumber" } ]

文件:

{ 
    "_id" : ObjectId("5c4dd63bd76f061ef0dbcf28"), 
    "fruits" : [
        {
            "color" : "red", 
            "name" : "strawberry"
        }, 
        {
            "color" : "green", 
            "name" : "cucumber"
        }
    ]
}
匹配查询:

{ "fruits.name": "strawberry", "fruits.color": "green" }
如果不使用聚合框架,我如何告诉MongoDB只返回其中一个“水果”数组元素与查询中的两个条件都匹配的文档(因此在我的情况下,结果将不会是任何文档)?

您需要使用查询操作符来匹配数组中的多个条件

db.collection.find({
  "fruits": {
    "$elemMatch": {
      "name": "strawberry",
      "color": "green"
    }
  }
})