db.getSiblingDB().collection.find()
is een operatie aan de clientzijde. Het is niet iets dat u kunt gebruiken om verzamelingen samen te voegen als onderdeel van een query. Zie daarvoor https://docs.mongodb.com/manual/ reference/operator/aggregation/lookup/
.
Het tweede dat u doet, is het ophalen van geneste velden uit een document. U kunt dit doen met $set en puntnotatie. Zie specifiek het voorbeeld op https://docs.mongodb.com/manual/reference/operator/aggregation/set/#adding-fields-to-an-embedded-document .
U moet een enkele aggregatiepijplijn bouwen die alles doet wat uw huidige mix van aggregatie en javascript doet met alleen de bewerkingen die zijn gedocumenteerd in https://docs.mongodb.com/manual/reference/operator/aggregation/ en de fasen die zijn gedocumenteerd in https://docs.mongodb.com/manual /referentie/operator/aggregatie-pijplijn/ .