MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Намиране на дублиращи се стойности в масив MongoDB

Вероятно ще има много от тези документи и затова ги искате за ObjectId.

db.myCollection.aggregate([
  {"$project": {"collegeIDs":1}},
  {"$unwind":"$collegeIDs"},
  {"$group": {"_id":{"_id":"$_id", "cid":"$collegeIDs"}, "count":{"$sum":1}}},
  {"$match": {"count":{"$gt":1}}},
  {"$group": {"_id": "$_id._id", "collegeIDs":{"$addToSet":"$_id.cid"}}}
])

Това може да искате, което не е ясно от въпроса ви:

db.myCollection.aggregate([
  {"$match": {"userID":"USER001"}},
  {"$project": {"collegeIDs":1, "_id":0}},
  {"$unwind":"$collegeIDs"},
  {"$group": {"_id":"$collegeIDs", "count":{"$sum":1}}},
  {"$match": {"count":{"$gt":1}}},
])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да тествате надстройките на приложението си MongoDB?

  2. Запитване за документ и всички негови поддокументи, които съответстват на условие в mongodb (с помощта на spring)

  3. mongodb премества документи от една колекция в друга колекция

  4. rmongodb:използвайки $или в заявка

  5. MongoDB на AWS:Как да изберем правилния тип EC2 инстанция за вашия MongoDB сървър?