MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

związek na tej samej kolekcji w mongodb

Operator MongoDB najbliższy temu, czego szukasz, to $or , ale to nie to samo, co SQL UNION, który łączy dwa oddzielne zapytania w jeden wynik. Zapytania MongoDB zawsze dotyczą jednej kolekcji, ale $or pozwala mieć wiele klauzul zapytań.

Na przykład:

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}
)

Ponieważ ograniczasz się do wysyłania zapytań do pojedynczego zbioru, wyniki zostaną już zdeduplikowane na poziomie dokumentu, a wszystkie wyniki będą miały ten sam porządek sortowania, jeśli zostanie określony.

Jeśli chcesz zasymulować UNION (lub inną operację działającą z wieloma kolekcjami/zapytaniami) w MongoDB, będziesz musiał napisać wiele zapytań i scalić zestawy wyników w kodzie aplikacji.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Map-redukcja wydajności w MongoDb 2.2, 2.4 i 2.6

  2. Monitorowanie i zabezpieczanie MongoDB za pomocą ClusterControl Advisors

  3. php agregacji mongodb

  4. Warunkowa suma $ w MongoDB

  5. Jak używać mongoimport do importowania csv