今天是个好日子。假设我们有一个集合和一个看起来像这样的文档:
test_doc = {
"ID" : "123",
"a" : [
{
'x' : "/",
'y' : "2000",
'z' : "1000"
},
{
'x' : "/var",
'y' : "3500",
'z' : "3000"
}
]
}
我需要的是检索单个属性 az 。在 MongoDB 中,我使用以下查询:
db.testcol.find({"ID":"123","a.x":"/"},{'a.z':1})
它返回这个:
{ "_id" : ObjectId("skipped"), "a" : [ { "z" : "1000" }, { "z" : "3000" } ] }
如您所见,它返回所有 z 属性,但是当条件为时,我只需要第一个或第二个{"ID":"123","a.x":"/var"}
因此,问题是:在这种情况下如何获得单个属性?这只是一个糟糕的设计问题还是我应该以某种方式在代码(python)中处理返回的文档?任何建议将不胜感激。