我有一些文件:
{
"storeID" : "715R",
"sensorID" : [
"0BBA",
"0BB9"
]
}
{
"storeID" : "312R",
"sensorID" : [
"0BBB"
]
}
Run Code Online (Sandbox Code Playgroud)
我想要得到的结果sensorID,其sotreID匹配的任何值storeIDarray一样['715R','312R','789R']
在这种情况下,我想得到结果:一个sensorID数组: [ "0BBA", "0BB9","0BBB"]
我该怎么办?谢谢。
您应该看看$inMongoDB中的运算符。将它与查找一起使用,然后,为了使您的请求更快,您可以使用该lean方法:使用它,mongoDB 将返回 JS 对象而不是 Mongoose 模型/对象。
YourModel.find({storeID: {$in: storeIDarray }}).lean().exec(yourCallback);
Run Code Online (Sandbox Code Playgroud)
然后,您可以reduce在结果数组上使用该方法:
yourResult.reduce((acc, el) => acc.concat(el.sensorID), []);
Run Code Online (Sandbox Code Playgroud)
希望它有帮助,
最好的问候
| 归档时间: |
|
| 查看次数: |
2847 次 |
| 最近记录: |