我有一个具有以下字段的对象数组:
let obj1 : {field1 : value1, field2 : value2, field3 : value3};
let listOfObjects : [obj1 , obj2 , obj3 , obj4 .... objn]
Obj1到Objn具有相同的结构和字段。
我想用Mongoose查询一个Model,以便在对象列表“listOfObjects”中找到与“field1”值相等的文档。
我试过了,它奏效了,但如果可能的话,我正在寻找更好的解决方案。
let valuesList = listOfObjects.map( x => x.field1);
let docs = await Model.find({keyToFind : valuesList});
先谢谢你
2条答案
按热度按时间tquggr8v1#
您需要使用Java脚本的Filter方法来执行此操作。
以下是代码片段/解决方案:
mspsb9vt2#
使用直接查询从MongoDB本身过滤掉这些对象。这比检索所有MongoDB文档然后使用Java脚本过滤器更高效。