我是mongodb,mongoose和nodejs的新手。在使用这些技术开发功能时,我遇到了一种情况,我必须根据子列值查找集合行。
应用程序">
[
{
_id:"",
applicant:"John",
jobID:ObjectId("job_id_1"),
{
_id:"",
applicant:"Tom",
jobID:ObjectId("job_id_2"),
]
Applications集合有jobID列。Jobs collection有title.
我要搜索所有申请职位为"5+ Y工程师"的申请人。
我已经写了我的代码像Applications.find({"jobID.title":"5+ Y Engineer"})
。但是这个没有返回任何东西。我在这里做错了什么吗?
Applications.find({})
.populate({
path: 'jobID',
match: { title: '5+ Y Engineer' }
})
// Applications where job title is "5+ Y Engineer"
const filteredApplications = applications.filter(application => application.jobID !== null);
// Do something with filteredApplications
});
我们正在使用populate()方法。替换"job";字段中包含完整的工作文档。我们还传递了一个match选项来过滤jon文档。基于标题file .