Python 根据地图中键的存在有选择地检索
是否可以根据mongodb中映射中的键的存在选择性地检索?如果是这样的话,你怎么做呢 例如,假设我有一个像这样的文档Python 根据地图中键的存在有选择地检索,python,mongodb,go,querying,Python,Mongodb,Go,Querying,是否可以根据mongodb中映射中的键的存在选择性地检索?如果是这样的话,你怎么做呢 例如,假设我有一个像这样的文档 { "_id": 1234, "parentfield1" : { "childfield1" : { ...}, "childfield2" : { ...}, "childfield5" : { ...}, // There might be many childfields.. > 50 }, } 如
{ "_id": 1234,
"parentfield1" : {
"childfield1" : { ...},
"childfield2" : { ...},
"childfield5" : { ...}, // There might be many childfields.. > 50
},
}
如果有多个选项可供选择,我如何能够有选择地从文档中检索某个特定的子字段?其中一些可能不存在于文档中
i、 e
这是否可行?是否也可以有效地执行?
任何帮助都会很好(python,go)。是的,这就是
projection
参数的目的:
db.collection.find({u id:1234}){
“parentfield1.childfield1”:1,
“parentfield1.childfield2”:1,
“parentfield1.childfield3”:1
});
如果指定的字段在给定的文档中不存在,则仍将包括其他匹配字段
如果希望参数对象是动态的,则以编程方式构建投影
参数对象
input "childfield1", "childfield2", "childfield3"
-> output
{ "_id": 1234,
"parentfield1": {
"childfield1" : { ... },
"childfield2" : { ... },
},
}