使用Mongoose在MongoDB中通过两个ID查找常见内容

时间:2014-08-14 14:03:17

标签: node.js mongodb mongoose database

好的,我编辑后要说清楚。

我在这里遇到了一些问题。我找不到最好的方法:

我的MongoDB上有一个“表格”,我的Mongoose模型就是这样:

var machineSchema = new Schema({
    uuid      :   String, 
    data      :   String
});

所以UUID是我的机器UUID。我可以在数据库中使用这样的东西:

{"uuid":"bla1","data":"RAM 1024MB"},
{"uuid":"bla1","data":"LINUX"},
{"uuid":"bla1","data":"CPU: Xeon"},
{"uuid":"bla2","data":"RAM 512MB"},
{"uuid":"bla2","data":"LINUX"},
{"uuid":"bla2","data":"CPU: Pentium Dual Core"}

我想要做的是,有两个UUID(如bla1和bla2)找到它们的共同点(数据)。所以它应该返回:

{"uuid":"bla1","data":"LINUX"},
{"uuid":"bla2","data":"LINUX"}

或只是

{"data":"LINUX"}

我可以对bla1和bla2进行两次查询,然后手动比较,但我认为它有更好的方法。我不习惯Mongoose查询,无论如何都要做到这一点?在MySQL上,我会使用两个子查询进行查询,只选择field1在两个之间匹配的结果。关于Mongoose我该怎么做?

谢谢!

1 个答案:

答案 0 :(得分:1)

听起来你需要经典的SQL'加入'功能。

不幸的是,MongoDB(以及大多数NoSQL数据库)不支持连接,功能更适合处理单独的实体而不是集合。