我想查一下,100是动态的:
{
$merge: {
_id: ObjectId('61e56339b528bf009feca149')
}
},
{
$lookup: {
from: 'computer',
localField: '_id',
foreignField: 'configs.?.refId',
as: 'computers'
}
}
我知道100总是以configs开头,以refId结尾,但两者之间的字符串是动态的.
以下是文档外观的示例:
'_id': ObjectId('6319bd1540b41d1a35717a16'),
'name': 'MyComputer',
'configs': {
'ybe': {
'refId': ObjectId('61e56339b528bf009feca149')
'name': 'Ybe Config'
},
'test': {
'refId': ObjectId('61f3d7ec47805d1443f14540')
'name': 'TestConfig'
},
...
}
正如您所看到的,configs
属性包含具有不同名称(‘ybe’、‘test’等)的不同对象.我想根据所有这些对象内部的refID进行查找.
我怎样才能做到这一点?