Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   Удаление дубликатов mongodb (https://javascript.ru/forum/node-js-io-js/73369-udalenie-dublikatov-mongodb.html)

WonderDog 10.04.2018 16:49

Удаление дубликатов mongodb
 
Доброго времени суток. Имеется mongo коллекция messages, в ней поля: number (номер заказа), lastName, email, phone, country, region, city, postcode, deliveryMethod, payMethod, adress, information, code. Пытался таким вот образом удалить дубликаты:
db.messages.aggregate([
	{"$group" : {
		 "_id": { "number": "$number","name": "$name", "lastName": "$lastName", "email": "$email", "phone": "$phone", "country": "$country", "region": "$region", "city": "$city", "postcode": "$postcode", "deliveryMethod": "$deliveryMethod", "payMethod": "$payMethod", "adress": "$adress", "information": "$information", "code": "$code" },
		 "dups": { "$push" : "$_id" },
		 "count": { "$sum" : 1}
	}},
	{"$match": { "count" : { "$gt": 1 } }}
]).forEach(function(doc) {
	doc.dups.shift();
	db.messages.remove({ "$_id": {"$in": doc.dups }});
});

Однако, как видите, не очень успешно. Подскажите пожалуйста.


Часовой пояс GMT +3, время: 05:38.