【发布时间】:2020-08-19 19:00:12
【问题描述】:
我正在使用 pymongo 并在编写聚合查询之后
db.collection.aggregate([{'$project': {'Id': '$ResultData.Id','data' : '$Results.Data'}}])
我收到了物品:
{'data': [{'key': 'valid', 'value': 'true'},
{'key': 'number', 'value': '543543'},
{'key': 'name', 'value': 'Saturdays cx'},
{'key': 'message', 'value': 'it is valid.'},
{'key': 'city', 'value': 'London'},
{'key': 'street', 'value': 'Bigeye'},
{'key': 'pc', 'value': '3566'}],
有没有办法可以通过键名访问值?就像'$Results.Data.city' 一样,我将收到伦敦。我想在 MongoDB 聚合查询的级别上这样做,所以这意味着我想以这种方式编写查询:
db.collection.aggregate([{'$project':
{'Id': '$ResultData.Id',
'data' : '$Results.Data',
'city' : $Results.Data.city',
'name' : $Results.Data.name',
'street' : $Results.Data.street',
'pc' : $Results.Data.pc',
}}])
并接收提供的键的所有值。
【问题讨论】:
标签: python json mongodb pymongo