sql >> Databasteknik >  >> NoSQL >> MongoDB

MongoDB $elemMatch $in

Du kan använda annan syntax än den du försöker som ger samma resultat men som inte stöter på begränsningen i SERVER-3544.

Använd denna syntax:

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

Detta kommer att matcha alla dokument som har ett array-element med både 313 och antingen 6 eller 19.

Det fungerar även med {$in:[]} för både defindex och _particleEffect, så länge du tänker matcha valfri kombination av de två listorna.

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


  1. spara IP-adress i mongoDB

  2. Hur kör man Redis på Amazon OpsWorks för en Rails-applikation?

  3. Redis Keyspace Notifications med flushdb

  4. Mongoose returnerar alltid en tom array NodeJS