首页 > 解决方案 > 如何将一个集合字段合并到另一个集合字段而不重复

问题描述

我正在从名为“fileprocessingrequest”的集合上的聚合查询中获取结果。我试图将字段 AssetIDArray(array) 从“fileprocessingrequest”集合的结果合并到另一个名为“subscriber”的集合,该集合由字段 dvr_id(Array) 组成。它不应该允许重复的 ID 合并

我试图弄清楚如何将 AssetID 数组合并到 dvr_id 数组中而不重复记录。

下面是对文件处理请求集合的聚合结果

[{"AssetIDArray":["SID_BIGBANG_2ACF","SID_BIGBANG_2ACD","SID_BIGBANG_2ACC","SID_BIGBANG_2ACB"],"count":7}]

订阅者收集结果如下所示

[{"_id":"5cca2a6a1055de2ff407d4c3","dvr_id":["SID_BIGBANG_2ACF","SID_BIGBANG_2ACD"]}]

我希望“fileprocessingrequest”集合中的数组与“subscriber”集合中的数组合并而不会重复。我无法弄清楚我该怎么做。

标签: javascriptnode.jsmongodb

解决方案


const setId = new Set([...AssetIDArray, ...dvr_id]);
const uniqArr = Array.from(_set);

推荐阅读