我的收藏中有以下文档
{
"_id": "12345",
"Products": [
"Product1",
"Product2"
],
"State": "active",
}
如何根据数组投影到多个文档中?所需的输出应该是这样的
{
"_id": "12345",
"Product": "Product1",
"State": "active",
}
{
"_id": "12345",
"Product": "Product2",
"State": "active",
}
$unwind
- 将 Products
数组解构为多个文档。
$set
- 使用 Product
设置 Products
字段并删除 Products
字段。
db.collection.aggregate([
{
$unwind: "$Products"
},
{
$set: {
Product: "$Products",
Products: "$$REMOVE"
}
}
])