我的 pymongo 脚本中有以下管道:
pipeline = [
{'$match': {'_id': '123456'}},
{'$lookup': {
'from': 'Case',
'localField': '_id',
'foreignField': 'RecordList.Record._id',
'as': 'CaseInfo'}
},
{'$unwind':'$CaseInfo'},
{'$unwind':'$CaseInfo.RecordList'},
{'$unwind':'$CaseInfo.RecordList.Record'},
{'$match': {'CaseInfo.RecordList.Record._id': '123456'}}
]
我需要更改最后一行代码,这样我就不需要手动指定文档 ID,而是从初始文档中获取它。
我尝试了以下但没有运气:
{'$match': {'CaseInfo.RecordList.Record._id': '_id'}}
{'$match': {'CaseInfo.RecordList.Record._id': '$_id'}}
请你帮助我好吗?
另外,这是完成此任务的最有效方法,还是应该使用 $project?我尝试使用它,但我不知道文档的结构,我需要文档中的每个字段。我不确定是否有办法在 $filter 运算符中不指定“1”(因为我不知道键名)
提前致谢
缥缈止盈
相关分类