如何查询mongodb

时间:2017-09-22 21:25:16

标签: javascript database mongodb javascript-objects

我有一个看起来像这样的db对象:

{
   user_name: 'string',
   skills: [ 
       { skill: 'skill1', lvl: 3 } 
   ],
   wantsToLearn: [ 
       {skill: 'skill2' } 
   ]
}

我想进行一个查询,其中我发现所有具有wantToLearn技能的用户匹配我的输入用户的技能(不管是lvl),反之亦然。基本上,我希望能够找到技能和他们想要学习的东西之间匹配的所有用户。

我已经查看了mongodb文档,对于如何以最佳方式执行此操作仍然有点无能为力。除了一些sql之外,我对数据库很新。

任何指针都将非常感激!

1 个答案:

答案 0 :(得分:1)

如果您想找到符合您指定技能的所有用户,您只需:

db.getCollection('yourCollection').find({"wantsToLearn.skill": "skill2" })

这就是你在MongoDB中查询子文档的方式,即使在数组

中也是如此