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

MongoDB $elemMatch $in

Du kan bruge en anden syntaks end den, du prøver, som opnår det samme resultat, men som ikke løber ind i begrænsningen i SERVER-3544.

Brug denne syntaks:

db.collection.find({ "unusual": {"$elemMatch":{"defindex":363,"_particleEffect":{"$in":[6,19]}  }} })

Dette vil matche ethvert dokument, der har et array-element med både 313 og enten 6 eller 19.

Det virker også med {$in:[]} for både defindex og _particleEffect, så længe du har til hensigt at matche en kombination af de to lister.

db.collection.find({ "unusual": {"$elemMatch":{"defindex":{"$in":[313,363]},"_particleEffect":{"$in":[6,19]}  }} })


  1. Kan $in og $ eller erstatte hinanden i MongoDB?

  2. MongoError:Forkerte argumenter

  3. mongoimport Docker mislykkedes:fejl ved forbindelse til db-serveren:ingen tilgængelige servere

  4. Få særskilte postværdier