【发布时间】:2021-09-23 10:58:52
【问题描述】:
我为两种不同类型的产品提供了两个不同的系列。现在,我想从两个集合中为特定用户获取所有文档。
我知道我可以对每个集合进行 2 个查询,在服务器端合并它们并将结果发送给用户。这样做的缺点是我必须从两个集合中为用户获取所有文档,这不利于分页。这就是为什么我想在一个查询中完成,所以我也可以将分页逻辑留给 MongoDB。
这是集合和预期结果的示例:
Products_type_1
[
{
"name": "product_1",
"user": "user_1",
...
},
{
"name": "product_2",
"user": "user_2",
...
}
]
Products_type_2
[
{
"name": "product_3",
"user": "user_1",
...
},
{
"name": "product_4",
"user": "user_2",
...
}
]
预期结果:
[
{
"type": "Products_type_1",
"name": "product_1",
"user": "user_1",
...
},
{
"type": "Products_type_2",
"name": "product_3",
"user": "user_1",
...
}
]
【问题讨论】:
标签: javascript node.js mongodb mongoose aggregation-framework