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

съюз за същата колекция в mongodb

Най-близкият оператор MongoDB до това, което търсите, е $or , но това не е съвсем същото като SQL UNION, който комбинира две отделни заявки в един резултат. Заявките на MongoDB винаги са срещу една колекция, но $or ви позволява да имате множество клаузи за заявка.

Например:

db.collection.find(
    // Find documents matching any of these values
    {$or:[
        {var1: 123},
        {var2: 456},
        {var3: 789}
    ]}
).sort(
    // Sort in ascending order
    {var1:1, var2:1, var3:1}
)

Тъй като сте ограничени до заявка за една колекция, резултатите вече ще бъдат премахнати на ниво документ и всички резултати ще споделят един и същ ред на сортиране, ако е посочен такъв.

Ако искате да симулирате UNION (или друга операция, работеща с множество колекции/заявки) в MongoDB, ще трябва да напишете множество заявки и да обедините наборите от резултати в кода на вашето приложение.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB - вземете документи с максимум атрибут за група в колекция

  2. Защо производителността на Mongodb е по-добра на Linux, отколкото на Windows?

  3. Контролен списък за сигурност за производствени внедрявания на MongoDB

  4. Mongodb Присъединете се към полето _id от String към ObjectId

  5. Как да импортирам данни от mongodb в pandas?