按字段分组并合并字段的文档

3
我有一个文档结构。
{
"_id" : ObjectId("63b6757dfa46345e268b7ba5"),
  "name" : "Blue Skinny Jeans",
  "sizes" : [45,46],
  "textile" : "Wool",
  "merchantCategory" : "Jeans",
  "tags" : ["Tag 1","Tag 2"],
  "sku" : "12161-2753930-5053177208071",
  "manufacturer" : "Hugo Boss"
}

/* 1 */
{
  "_id" : ObjectId("53b6757dfa46345e268b7ba4"),
  "name" : "Blue Skinny Jeans",
  "sizes" : [40,41],
  "textile" : "Polyester",
  "merchantCategory" : "Jeans",
  "tags" : ["Tag 2","Tag 3"],
  "sku" : "12161-2753930-5053177208071",
  "manufacturer" : "Hugo Boss"
}

是否有可能创建一个查询,按名称对文档进行“分组”,并合并不相同的字段(大小、标签、商家类别、纺织品)


两个对象具有相同的 _id。在同一集合中不可能。您应该使用真实数据进行更正。 - kranteg
哈哈,所以他们的ID不一样。我会纠正这个问题。 - MadeOfSport
1个回答

1

这可能会起作用,

coll.aggregate({"$group":{"_id":"$name",
                          "sizes":{"$addToSet":"$sizes"},
                          "tags":{"$addToSet":"$tags"},
                         ..
                         ..
                })

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接