I have some documents :
{
"storeID" : "715R",
"sensorID" : [
"0BBA",
"0BB9"
]
}
{
"storeID" : "312R",
"sensorID" : [
"0BBB"
]
}
I want to get result of sensorID
which sotreID
match any value in storeIDarray
like ['715R','312R','789R']
in this case I want get result : a sensorID
array : [ "0BBA", "0BB9","0BBB"]
what should I do? thanks.
You should take a look at the $in
operator in MongoDB.
Use it with a find, then, to make your request faster, you can use the lean
method : with it, mongoDB will return JS objects and not Mongoose model/objects.
YourModel.find({storeID: {$in: storeIDarray }}).lean().exec(yourCallback);
Then, you can use the reduce
method on the resulting array :
yourResult.reduce((acc, el) => acc.concat(el.sensorID), []);
Hope it helps,
Best regards
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With