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

Zapytanie Mongo na polach podrzędnych

Innym, bardziej wydajnym podejściem byłoby zaimplementowanie poddokumentu „status” jako tablicy „wpisanych wartości”, na przykład:

 {"_id" : ObjectId("51385d2308d427ce306f0100"),
  "aid" : "1",
  "studyId" : "study-1",
  "mediaType" : "microBlog",
  "text" : "bla bla",
  "sentences" : "bla bla",
  "status" : [
          { type: "algo1", value: "required" },
          { type: "algo2", value: "required" },
          { type: "algo3", value: "completed" },
          { type: "algo4", value: "completed" }
  ],
  "priority" : "u"}

Umożliwiłoby to znalezienie wszystkich dokumentów, dla których którekolwiek z podpolów ma wartość „wymagane”, za pomocą tego zapytania:

db.foo.find({"status.value":"required"})

Zdefiniowanie indeksu w tym podpolu przyspieszyłoby zapytanie:

db.foo.ensureIndex({"status.value":1})


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. BŁĄD:proces potomny nie powiódł się, zakończono z błędem numer 48

  2. Jak porównać dwa ciągi w wiosennych danych mongoDB?

  3. Jak odzyskać dane po wycofaniu MongoDB?

  4. transakcja wielu dokumentów nie działa w c# przy użyciu serwera społeczności mongodb 4.08

  5. DoctrineMongoDBBundle otrzymuje krytyczny błąd w Symfony2