我有下一个mongo代码:
db.users.aggregate([
{
$match: {
$and: [
{ UserName: { $eq: 'administrator' } },
{ 'Company.CompanyName': { $eq: 'test' } }
]
}
},
{
$lookup: {
from: "companies",
localField: "CompanyID",
foreignField: "CompanyID",
as: "Company"
}
},
])
代码的$lookup
部分工作得很好.我得到了下一个结果:
但如果我给代码加上$match
,它什么也不会带来.
我发现问题出在第二场比赛:{ 'Company.CompanyName': { $eq: 'test' } }
,但我不知道这是怎么回事.
UPDATE:
我也try 了$lookup
结果的$unwind
,但没有运气:
db.users.aggregate([
{
$match: {
$and: [
{ UserName: { $eq: 'administrator' } },
{ 'Company.CompanyName': { $eq: 'edt5' } }
]
}
},
{ unwind: '$Company' },
{
$lookup: {
from: 'companies',
localField: 'CompanyID',
foreignField: 'CompanyID',
as: 'Company'
}
},
])