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

Zapytanie Mongodb z polami w tych samych dokumentach

Możesz użyć $where :

db.myCollection.find( { $where: "this.a1.a != this.a2.a" } )

Należy jednak pamiętać, że nie będzie to bardzo szybkie, ponieważ będzie musiało rozkręcić silnik skryptów java i wykonać iterację każdego dokumentu i sprawdzić stan każdego z nich.

Jeśli potrzebujesz wykonać to zapytanie dla dużych kolekcji lub bardzo często, najlepiej wprowadzić zdenormalizowaną flagę, taką jak areEqual . Jednak takie pola o niskiej selektywności nie zapewniają dobrej wydajności indeksu, ponieważ zbiór kandydatów jest nadal duży.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. JSON serializuje Mongodb

  2. Agregat Mongodb (liczba) na wielu polach jednocześnie

  3. Importuj plik JSON do MongoDB za pomocą mongoimport

  4. Meteor zwraca nieprawidłowy ciąg znaków szesnastkowych podczas próby utworzenia ObjectID?

  5. Zrozumienie Meteor Publish / Subskrybuj