Net als bij "joins" in sql, moet je in Mongo "lookup" gebruiken.
Om lookup te gebruiken, moet u de "aggregate"-query gebruiken,
Dus de vraag die je nodig hebt is,
db.collection('users').aggregate({$match:{ email: 'example_email' }},
{$unwind:{path:"$sensors"}},
{$lookup:{from:"sensor", localField: "sensors", foreignField:"sensorId", as:"sensorDetails"}},
(err, userData)=>{
console.log(userData);
})
Dus wat deze vraag doet,
zie de regel "$lookup" ---> van de verzameling "gebruikers", het gebruikt het veld "sensors" (lokaal veld voor uw gebruikersverzameling zoals de primaire id in sql) en haalt informatie op uit de verzameling "sensor" die overeenkomt met sensorId (buitenlandse veld in sensorverzameling), en sla het resultaat op in het veld "sensorDetails".
u kunt toegang krijgen tot sensorDetails met "userData[0].sensorDetails".sensorDetails zal een array zijn.
Bekijk officiële documenten over lookup Lees ook over ontspannen