MongoDB不显示子文档中的所有元素
我拥有以下结构的文件:MongoDB不显示子文档中的所有元素,mongodb,Mongodb,我拥有以下结构的文件: { "_id" : ObjectId("50b8f881065f90c025000014"), "education" : { "schoolCountry" : 4, "schoolTown" : -1, "uniCountry" : 4, "uniTown" : -1 }, "info" : { "ava" : "auto.jpg", "birthday" : ISODate("1942-04-01T21
{
"_id" : ObjectId("50b8f881065f90c025000014"),
"education" : {
"schoolCountry" : 4,
"schoolTown" : -1,
"uniCountry" : 4,
"uniTown" : -1
},
"info" : {
"ava" : "auto.jpg",
"birthday" : ISODate("1942-04-01T21:00:00Z"),
"email" : "mail@gmail.com",
"name" : "name",
"sex" : 1,
"surname" : "surname"
}
}
我试图只输出姓氏和姓名
我唯一能做到的是:
db.COLL.find({ }, {
"_id" : 0,
"education" : 0,
"info" : 1
})
仅显示子文档中需要的元素的想法失败了:
db.COLL.find({ }, {
"_id" : 0,
"education" : 0,
"info.surname" : 1,
"info.name" : 1,
})
但是隐藏(info.email:0)是有效的。是否可以在不隐藏所有不需要的字段的情况下实现我的目标?除了关闭
\u id
(默认情况下包括)之外,您不能混合包含和排除字段
因此,只需请求info.name
和info.name
字段:
db.coll.find({ }, {
"_id" : 0,
"info.surname" : 1,
"info.name" : 1,
})
样本输出:
{ "info" : { "name" : "name", "surname" : "surname" } }