Database

db={"store":[{"id":"5dc25092d972e71c3b3e6e87","name":"Chad store",},{"id":"5dc2899bfd1ea02f0fceb9ab","name":"Bad store",}],"signals":[{"id":"5dc250e0d972e71c3b3e6e88","signalStrength":-180,"signalbars":"3","employee":"5db59227f0204855654075ee","store":"5dc25092d972e71c3b3e6e87","carrierName":"LT&T"},{"id":"5dc251f723760a24de167f8e","signalStrength":-180,"signalbars":"3","employee":"5db59227f0204855654075ee","store":"5dc25092d972e71c3b3e6e87","carrierName":"Sprint"},{"id":"5dc289affd1ea02f0fceb9ac","signalStrength":-80,"signalbars":"3","employee":"5db59227f0204855654075ee","store":"5dc2899bfd1ea02f0fceb9ab","carrierName":"LT&T"}],"speedTests":[{"id":"5dc2c170e26c4a484051f4af","ping":10,"downloadSpeed":7.66,"uploadSpeed":4.22,"employee":"5dc2b9467a56f3446dcaf8f6","store":"5dc25092d972e71c3b3e6e87"},{"id":"5dc3a0a92588214e1a938a34","ping":10,"downloadSpeed":7.66,"uploadSpeed":4.22,"employee":"5dc2b9467a56f3446dcaf8f6","store":"5dc25092d972e71c3b3e6e87"}]}

Query

db.store.aggregate([{$lookup:{from:"signals",localField:"id",foreignField:"store",as:"storeSignals"}},{$lookup:{from:"speedTests",localField:"id",foreignField:"store",as:"speedTests"}},{$unwind:{path:"$storeSignals",preserveNullAndEmptyArrays:true}},{$replaceRoot:{newRoot:{$mergeObjects:["$storeSignals",{"store":"$_id","storeName":"$name","carrierName":"$carrierName","speedTests":"$speedTests","signalStrength":"$signalStrength",},]}}},{$project:{_id:0,store:"$store",storeName:"$storeName",carrierName:"$carrierName",averageSignalStrength:{$ifNull:[{$avg:"$signalStrength"},0]},averageUploadSpeed:{$ifNull:[{$avg:"$speedTests.uploadSpeed"},0]},averageDownloadSpeed:{$ifNull:[{$avg:"$speedTests.downloadSpeed"},0]},totalSpeedTests:{$size:"$speedTests"},totalSpeedtestTesters:{"$size":{"$setDifference":["$speedTests.employee",[]]}}}},])

Result