MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

A filtragem de população aninhada é MongoDB


Ao executar await Order.find({}).populate({ , o Mongoose primeiro envia o find para o servidor mongod e retorna um cursor, que é passado para preencher.

Populate então recupera cada documento do cursor e envia um find separado para o user coleção para recuperar os documentos correspondentes e itera esse cursor, colocando os documentos recuperados em uma matriz no documento original.

Preencher pode afetar quais documentos são incorporados nos documentos originais, mas não tem nenhum recurso para remover documentos do conjunto de resultados original.

A match passado para preencher significará que apenas os usuários correspondentes serão adicionados ao documento original, portanto, você poderá usar filter para eliminar quaisquer documentos no resultado que não contenham usuários.