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

MongoDB $elemMatch $in

Можете да използвате синтаксис, различен от този, който опитвате, който постига същия резултат, но не попада в ограничението в SERVER-3544.

Използвайте този синтаксис:

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

Това ще съвпадне с всеки документ, който има елемент от масив както с 313, така и с 6 или 19.

Работи и с {$in:[]} както за defindex, така и за _particleEffect, стига да възнамерявате да съпоставите всяка комбинация от двата списъка.

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


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. mongodb 4x по-бавен от sqlite, 2x по-бавен от csv?

  2. Mongoid / Mongodb и заявка за вградени документи

  3. Pymongo/bson:Преобразуване на python.cursor.Cursor обект в сериализуем/JSON обект

  4. Запитване за вложени вградени документи с Mongoose

  5. Условно включване на етапите на тръбопровода за агрегиране