删除Mongo同一集合中的多个对象中的重复

时间:2017-11-10 03:27:09

标签: arrays mongodb mongoose duplicates

我有一个名为Persons的集合,其中包含以下信息。

{
   name: "John Doe",
   gender: "m",
   phone: [ 123, 564, 123 ]
},
{
   name: "Elsa",
   gender: "f",
   phone: [ 456, 6789, 123 ]
},
{
   name: "Smith",
   gender: "m",
   phone: [ 55, 3244, 55]
}

我想要的是运行updateMany方法查询,该查询遍历每个这些对象,并且在阵列中有电话号码重复,它应该删除那些重复。

如果phone之前是[ 123, 548, 123],我希望它是[ 123, 55 ]。我对Stack溢出做了一些研究,我发现的实现是人们使用聚合或forEach循环。有没有更好的方法来做到这一点。任何帮助或指示都将受到高度赞赏。

我不希望使用聚合或使用for循环实现。

“John Doe”和“Elsa”中的对象可以包含重复的电话号码123John Doe不应重复123两次。

我有一个包含超过1000个对象的集合。有没有办法可以删除所有对象的重复。

谢谢。

0 个答案:

没有答案