Javascript NodeJS with MongoDB-获取与数组对象之一匹配的嵌套集合
我试图用NodeJS编写一个查询,只是语法有问题 我是Mongo的新手,我对一些复杂的(至少在我这个级别)查询有一段时间的思考 我有一个mongo ID数组(我们称之为mongoArr)。 我有一个叫做数据的集合。 在此数据集合中有一个名为innerNested的嵌套对象。 我试图检索的是所有“数据”元素,它们的“innerNested”id等于数组中的一个id 如果它是一个简单的JS,它应该是:Javascript NodeJS with MongoDB-获取与数组对象之一匹配的嵌套集合,javascript,node.js,mongodb,Javascript,Node.js,Mongodb,我试图用NodeJS编写一个查询,只是语法有问题 我是Mongo的新手,我对一些复杂的(至少在我这个级别)查询有一段时间的思考 我有一个mongo ID数组(我们称之为mongoArr)。 我有一个叫做数据的集合。 在此数据集合中有一个名为innerNested的嵌套对象。 我试图检索的是所有“数据”元素,它们的“innerNested”id等于数组中的一个id 如果它是一个简单的JS,它应该是: var output = []; for (var i=0;i<data.length;i+
var output = [];
for (var i=0;i<data.length;i++)
{
if (mongoArr.indexOf(data[i].innerNested.$id) != -1)
{
output.push(data[i];
}
}
var输出=[];
对于(var i=0;i如果您使用的是Mongoose,您可以在查询中直接引用“innerNested”字段,如下所示
Person.find({
'innerNested._id': {
$in: mongoArr
}
}, function(err, docs) {
console.log(docs);
});
其中,“$in”子句将检查ID是否在您的ID数组中。您的伪代码没有问题。但是您必须在分号之前插入pseudo'),这就是伪代码不起伪作用的原因。