好的,我编辑后要说清楚。
我在这里遇到了一些问题。我找不到最好的方法:
我的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我该怎么做?
谢谢!
答案 0 :(得分:1)
听起来你需要经典的SQL'加入'功能。
不幸的是,MongoDB(以及大多数NoSQL数据库)不支持连接,功能更适合处理单独的实体而不是集合。