Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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_Field_Projection - Fatal编程技术网

Arrays 在MongoDB中的数组中投影指定字段(缺少]错误?)

Arrays 在MongoDB中的数组中投影指定字段(缺少]错误?),arrays,mongodb,field,projection,Arrays,Mongodb,Field,Projection,在MongoDB中,我了解到要在集合中仅投影指定字段,我将执行: db.collection.find({}, {"field1": 1, "field2": 1}) 但是,如果我只想在集合的数组中投影指定的字段,该怎么办?我能想到的唯一办法是: db.collection.find({field1: [arrayfield1: 1, arrayfield2: 1, arrayfield3: 1]}) 但我在元素列表(shell):1之后得到“SyntaxError:missing]。 我也

在MongoDB中,我了解到要在集合中仅投影指定字段,我将执行:

db.collection.find({}, {"field1": 1, "field2": 1})
但是,如果我只想在集合的数组中投影指定的字段,该怎么办?我能想到的唯一办法是:

db.collection.find({field1: [arrayfield1: 1, arrayfield2: 1, arrayfield3: 1]})
但我在元素列表(shell):1之后得到“SyntaxError:missing]。 我也试过这个:

db.collection.find({field1: [arrayfield1: 1], [arrayfield2: 1], [arrayfield3: 1]})
并得到相同的错误。谁能告诉我我做错了什么?因为我想不出来。或者如果我在完全错误的轨道上


(我知道错误是“元素列表”,我相信它应该是一个字段列表或类似的内容,所以我怀疑这不是我想要做的事情的正确方法。)

我找到了答案。答案是点符号。这就成功了:

db.colletion.find({}, {  "array.arrayfield1" : 1, "array.arrayfield2" : 1, "array.arrayfield3" : 1 })

您的权限在db.fred.find({},{“zipcode”:1,“students.name”:1,“students.age”:1})中起作用