Подобно на „joins“ в sql, в Mongo трябва да използвате „lookup“.
За да използвате търсене, трябва да използвате "обобщена" заявка,
Така че заявката, от която се нуждаете, е,
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);
})
И така, какво прави тази заявка,
вижте реда "$lookup" ---> от колекцията "потребители", той използва полето "сензори" (локално поле към вашата потребителска колекция като основния идентификатор в sql) и извлича информация от колекцията "сензор", съответстваща на сензорния идентификатор (чужд поле в колекция от сензори) и съхранете резултата в полето „sensorDetails“.
можете да имате достъп до sensorDetails с "userData[0].sensorDetails".sensorDetails ще бъде масив.
Проверете официалните документи за търсене Прочетете също за unwind