Imagine a product collection:
db.produtos.find()
[
{
_id: "produto01",
cores: ["preto", "branco", "ouro"]
},
{
_id: "produto02",
cores: ["branco", "ouro"]
}
]
Each product has a field called colors, which is a list of strings. Using $unwind
in the color field results in the following:
db.produtos.aggregate([ { $unwind: "$cores" } ])
[
{
_id: "produto01",
cores: "preto"
},
{
_id: "produto01",
cores: "branco"
},
{
_id: "produto01",
cores: "ouro"
},
{
_id: "produto02",
cores: "branco"
},
{
_id: "produto02",
cores: "ouro"
}
]
How do you reverse this operation? That is, go from the above result back to the original, after doing $unwind
?