根据官方的mongo文档,我可以使用它来检索数组的第一个元素,
db.students.find( { semester: 1, grades: { $gte: 85 } }, { "grades.$": 1 } )
但是我想要所有不带等级的所有第一数组元素: {$ gte:85} 过滤器,
db.students.find( { semester: 1}, { "grades.$": 1 } )
但是我为此付出了错误,
正投影'grades。$'与查询文档不匹配。
答案 0 :(得分:2)
您可以使用$slice operator,它返回数组的前X个元素,您可以将其设置为1:
db.students.find( { semester: 1}, { "grades": { $slice: 1 } } )