MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Znajdowanie zduplikowanych wartości w tablicy MongoDB

Prawdopodobnie byłoby wiele takich dokumentów, a zatem chcesz je na 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"}}}
])

To może być to, czego chcesz, co nie wynika z Twojego pytania:

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. uaktualnij mongodb

  2. Grupuj MongoDB według wartości w polu tablicy

  3. Jak zmienić kolejność tablicy za pomocą MongoDB?

  4. MongoDB:aktualizuj każdy dokument w jednym polu

  5. Jak wyszukiwać dokumenty za pomocą pola _id w sterowniku Java mongodb?