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

Korzystanie z funkcji MongoDB .findOne() z zagnieżdżoną wartością dokumentu

Podczas dopasowywania do tablicy, jeśli określisz zapytanie w ten sposób:

{ exercises: { _id: exerciseID } }

MongoDB próbuje wykonać dokładne dopasowanie w dokumencie . Więc w tym przypadku MongoDB dopasuje tylko dokumenty w exercises tablica dokładnie w postaci { _id: ObjectId("...") } . Ponieważ dokumenty w exercises mają inne pola, nigdy nie da dopasowania, nawet jeśli _id s są takie same.

Zamiast tego chcesz zrobić zapytanie o pole dokumentów w tablicy . Kompletny dokument zapytania wyglądałby wtedy tak:

{
  user: user.id,
  "exercises._id": exerciseID
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Czy można inicjować eksporty asynchronicznie w module node.js?

  2. Grupuj według dnia z wieloma polami daty

  3. Flask — złe żądanie Przeglądarka (lub serwer proxy) wysłała żądanie, którego ten serwer nie mógł zrozumieć

  4. MongoDB – czy mój dokument użytkownika powinien zawierać listę identyfikatorów projektów?

  5. Z mongodb i guidami do identyfikatora dokumentów, jaki jest skuteczny sposób przechowywania identyfikatorów, aby łatwo uzyskać rzeczywisty identyfikator?