我有 2 个不同的 MongoDB 集合 -员工和部门都包含共同的deptid。我想加入这两个集合并从两个集合中添加多个 $match 条件。
雇员:
{
Empid: 001
Name: "John"
Age: 41
Location: "Belfast"
deptid: "D101"
}
Run Code Online (Sandbox Code Playgroud)
部门:
{
deptID: "D101"
deptNM: "HR"
deptPr: "O"
}
Run Code Online (Sandbox Code Playgroud)
询问:
db.getCollection('Employees').aggregate([
{ $match:{
deptNM: "HR",
Age : {$gt: 40}
}
},
{ $lookup: {
from: "Dept",
localField: "deptid",
foreignField: "deptID",
as: "HR EMP"
}
},
{ $project: {
Empid: 1, Name: 1, Location: 1, deptNM: 1, deptPr: 1
}
}
])
Run Code Online (Sandbox Code Playgroud)
上面的查询不起作用,还有其他方法吗?