sql >> Database teknologi >  >> NoSQL >> MongoDB

Find duplikerede værdier i et MongoDB-array

Sandsynligvis ville der være mange af disse dokumenter, og du vil derfor have det pr. 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"}}}
])

Dette kan være, hvad du vil, ikke klart ud fra dit spørgsmål:

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 Expire virker ikke

  2. Få alle feltnavne i en mongodb-samling?

  3. Hvordan opretter man en lokal Windows-baseret servicebus uden for Azure, der ligner Redis med automatisk fail-over?

  4. Lær Redis-databasen at kende:Gentag over nøgler