Mongodb select with condition为selected结果必须在子选择查询中
如何在MongoDB中进行嵌套选择,类似于Mongodb select with condition为selected结果必须在子选择查询中,mongodb,Mongodb,如何在MongoDB中进行嵌套选择,类似于 SELECT id FROM table1 WHERE id IN (SELECT id FROM table2) 此页面包含SQL和MongoDB之间的比较器: 例如,您可以选择使用聚合管道,其中与: db.your_collection.aggregate({$match: {"id": {$in: ['id_0', 'id_1']} }}) db.your_collection.aggregate({field: "value"}) 一个简
SELECT id FROM table1 WHERE id IN (SELECT id FROM table2)
此页面包含SQL和MongoDB之间的比较器: 例如,您可以选择使用聚合管道,其中与:
db.your_collection.aggregate({$match: {"id": {$in: ['id_0', 'id_1']} }})
db.your_collection.aggregate({field: "value"})
一个简单的查询,如下所示:
db.your_collection.aggregate({$match: {"id": {$in: ['id_0', 'id_1']} }})
db.your_collection.aggregate({field: "value"})
Mongodb官方页面有很多信息Mongodb还不具备进行子查询的能力,这将允许此功能 我确信这是JIRA中的一些东西,但是,我无法立即找到它 目前唯一的方法是实际选择表,迭代光标,拉出信息,并将其作为$in查询的一部分,如@Bruno所示,如下所示:
ids=[];
for(i in db.c2.find({},{_id:1}){ // I have assumed id=_id
ids[ids.length]=i; // The default return of the index pos is actually _id
}
return db.c1.find({$in:ids});
作为一个简单的例子,我写下了我的头顶。为什么要对此使用聚合?{$match:{id:{$in:['id_0','id_1']}}}}与表2中的in SELECT id不同