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

Zagnieżdżone filtrowanie populacji to MongoDB

Podczas wykonywania await Order.find({}).populate({ , Mongoose najpierw wysyła find do serwera mongod i zwraca kursor, który jest przekazywany do wypełnienia.

Wypełnij następnie pobiera każdy dokument z kursora i wysyła oddzielne find do user kolekcji, aby pobrać pasujące dokumenty i iteruje ten kursor, umieszczając pobrane dokumenty w tablicy w oryginalnym dokumencie.

Wypełnianie może wpływać na to, które dokumenty są osadzane w oryginalnych dokumentach, ale nie ma możliwości usunięcia dokumentów z oryginalnego zestawu wyników.

match przekazane do wypełnienia oznacza, że ​​tylko pasujący użytkownicy zostaną dodani do oryginalnego dokumentu, więc powinieneś być w stanie użyć filter aby wyeliminować w wyniku wszystkie dokumenty, które nie zawierają użytkowników.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jak uzyskać wszystkie wartości, które zawierają część ciągu za pomocą wyszukiwania mangusty?

  2. Aktualizacja kolekcji MongoDB:zainicjuj dokument z wartościami domyślnymi

  3. Mongoose Saved _id's jako ciąg zamiast ObjectId

  4. Co to jest MongoDB i jak to działa?

  5. Jak usunąć wszystkie dokumenty z kolekcji za pomocą Mongoose?