仅访问 MongoDB 中的最低嵌套值
Access only lowest nested value in MongoDB
MongoDB 文档中的结构示例:
{'OtherData':...},
{'Top':
{'A': 'ValueA'}
{'B': 'ValueB'},
}
我想查询和投影 A
键的值,所以我使用该项目只是 return Top.A
db.find({},{'Top.A':1, '_id':0}
然而这只是 returns:
{'Top':{'A':'ValueA'}}
我只想 return ValueA
。我知道我可以访问它,因为它是一本字典,但我想直接在查询中访问它。
您可以使用 MongoDB 的 aggregate
管道,如果您想处理更复杂的文档,它会特别方便。
在你的情况下,你想像这样使用 $project
步骤:
db.base.aggregate([
{'$project':
{ 'A':'$Top.A'}
}
])
MongoDB 文档中的结构示例:
{'OtherData':...},
{'Top':
{'A': 'ValueA'}
{'B': 'ValueB'},
}
我想查询和投影 A
键的值,所以我使用该项目只是 return Top.A
db.find({},{'Top.A':1, '_id':0}
然而这只是 returns:
{'Top':{'A':'ValueA'}}
我只想 return ValueA
。我知道我可以访问它,因为它是一本字典,但我想直接在查询中访问它。
您可以使用 MongoDB 的 aggregate
管道,如果您想处理更复杂的文档,它会特别方便。
在你的情况下,你想像这样使用 $project
步骤:
db.base.aggregate([
{'$project':
{ 'A':'$Top.A'}
}
])