Вот как я следую за ответом @harri, чтобы удалить дубликаты:

ользую MongoDB и мне нужно удалить дубликаты записей. У меня есть коллекция списков, которая выглядит так: (упрощенно)

[
  { "MlsId": "12345"" },
  { "MlsId": "12345" },
  { "MlsId": "23456" },
  { "MlsId": "23456" },
  { "MlsId": "0" },
  { "MlsId": "0" },
  { "MlsId": "" },
  { "MlsId": "" }
]

Листинг является дубликатом, если MlsId не равен "" или "0", а другой листинг имеет тот же MlsId. Таким образом, в приведенном выше примере 2-я и 4-я записи должны быть удалены.

Как мне найти все дубликаты и удалить их? Я начал смотреть на MapReduce, но не смог найти пример, подходящий для моего случая.

Вот что у меня есть, но он не проверяет, равен ли MlsId "0" или "":

m = function () { 
    emit(this.MlsId, 1); 
} 

r = function (k, vals) { 
   return Array.sum(vals); 
} 

res = db.Listing.mapReduce(m,r); 
db[res.result].find({value: {$gt: 1}}); 
db[res.result].drop();

Ответы на вопрос(4)

Ваш ответ на вопрос