Mongodb 跨集合将两个字段的值合并为一个

Mongodb 跨集合将两个字段的值合并为一个,mongodb,aggregation-framework,Mongodb,Aggregation Framework,有没有办法将两个字段的值合并到一个字段或数组中? 我有这样一个MongoDB系列: {"_id": 1, "side1": "a", "side2": "b"}, {"_id": 2, "side1": "c", "side2": "b"}, {"_id": 3, "side1": "b", "side2": "d"}, {"_id": 4, "side1": "a", "side2": "d"} 如何获取包含side1和side2的所有值的数组 {"_id": null, "sides":

有没有办法将两个字段的值合并到一个字段或数组中? 我有这样一个MongoDB系列:

{"_id": 1, "side1": "a", "side2": "b"},
{"_id": 2, "side1": "c", "side2": "b"},
{"_id": 3, "side1": "b", "side2": "d"},
{"_id": 4, "side1": "a", "side2": "d"}
如何获取包含side1和side2的所有值的数组

{"_id": null, "sides": ["a", "b", "c", "d"]}

身份证并不重要。我已经尝试了许多聚合和级联查询命令,但无法得到所需的响应。

我只想找到一个更简单的解决方案:

   db.LINK.aggregate([
     { $group: {"_id":0,"list1":{$addToSet:"$side1"},"list2":{$addToSet:"$side2"}}} ,
     { $project: {array:{$setUnion:["$list1","$list2"]}}}
   ])

不可能有多个具有相同id的记录。请发布正确的数据