【发布时间】:2021-05-19 09:07:08
【问题描述】:
例如,我有 4 个集合。有:
- “公司”集合
{
"id_company": "C01"
"company_name": "Sidomuncul"
"like": [
"123",
"121"
]
}
- “用户”集合
{
"id_user": "123",
"name": "Astra",
"major": "111",
"language": [{
"id_language": "101",
"level": "Expert"
}]
},
{
"id_user": "121",
"name": "Bibi",
"id_major": "112",
"language": [{
"id_language": "102",
"level": "Intermediate"
}]
}
- “主要”合集
{
"id_major": "111",
"name": "IT"
},
{
"id_major": "112",
"name": "Designer"
}
- “语言”集合
{
"id_language": "101",
"name": "English"
},
{
"id_language": "102",
"name": "Chinese"
}
当我通过 id_company "C01" 为获得类似公司的人创建路线时,我想在 "like" 字段中显示结果关系 id_user 和用户集合。示例结果:
{
"id_company": C01",
"like": [
{
"id_user": "123",
"name": "Astra",
"major": "IT",
"language": [{
"id_language": "English",
"level": "Expert"
}]
},
{
"id_user": "121",
"name": "Bibi",
"id_major": "Designer",
"language": [{
"id_language": "Chinese",
"level": "Intermediate"
}]
}
] //Close Like Field
}
之前谢谢。
【问题讨论】:
-
用户集合中需要有外键引用公司集合进行join操作。阅读此处stackoverflow.com/questions/26008555/foreign-key-mongoose。
-
在你链接用户和公司集合后,执行一系列嵌套的$lookup操作来达到你的结果。对于嵌套的 $lookup,请阅读此处stackoverflow.com/questions/52712240/…。发布您的尝试,如果卡住了会帮助您。
-
谢谢,我已经试过了。但是仍然没有工作。当我查找另一个集合时,用户之前的数据没有显示