让我们假设我有一个MongoDB集合,其中包含这样的文档:
{
id: "xyz",
prop1: "val1",
prop2: "val2",
array1: [
{arr1objid:"1"},
{arr1objid:"2"},
],
array2: [
{arr2objid:"a"},
{arr2objid:"b"},
]
}
字符串
有没有可能使用某种聚合(也许是带有$unwind的东西)来获得这样的东西?
{
id: "xyz",
prop1: "val1",
prop2: "val2",
array1: {
arr1objid:"1"
}
},
{
id: "xyz",
prop1: "val1",
prop2: "val2",
array1: {
arr1objid:"2"
}
},
{
id: "xyz",
prop1: "val1",
prop2: "val2",
array2: {
arr2objid:"a"
}
},
{
id: "xyz",
prop1: "val1",
prop2: "val2",
array2: {
arr2objid:"b"
}
}
型
非常感谢您的任何建议。
1条答案
按热度按时间n9vozmp41#
是的,你应该使用$facet,它允许你执行多个管道(一个用于“array1”,一个用于“array2”),然后我们只需要合并它们
字符串
Mongo Playground的