如何在 mongodb 聚合中复制文档常数次?
How to duplicate a document constant times in mongodb aggregation?
我正在寻找一种方法来复制记录,同时向每条记录添加额外的 属性。
这是我的问题的简化版本,
考虑像这样的集合:
[
{ name: "john" },
{ name: "doe" }
]
成像我有一个项目数组:['cake','orange'],我期待如下所示的输出。
[
{ name: "john", item: "cake" },
{ name: "doe", item: "cake" },
{ name: "john", item: "orange" },
{ name: "doe", item: "orange"}
]
基本上每个物件都经过了重复,以满足items数组中的所有组合。此外,顺序很重要,每个项目都必须重复
转到下一个项目之前的对象。
你可以试试这个:
Model.aggregate([
{
$project: {name: 1, item: ['cake', 'orange']},
},
{$unwind:"$item"}
]);
我正在寻找一种方法来复制记录,同时向每条记录添加额外的 属性。
这是我的问题的简化版本,
考虑像这样的集合:
[
{ name: "john" },
{ name: "doe" }
]
成像我有一个项目数组:['cake','orange'],我期待如下所示的输出。
[
{ name: "john", item: "cake" },
{ name: "doe", item: "cake" },
{ name: "john", item: "orange" },
{ name: "doe", item: "orange"}
]
基本上每个物件都经过了重复,以满足items数组中的所有组合。此外,顺序很重要,每个项目都必须重复 转到下一个项目之前的对象。
你可以试试这个:
Model.aggregate([
{
$project: {name: 1, item: ['cake', 'orange']},
},
{$unwind:"$item"}
]);