Mongodb,用另一个结果减少结果

时间:2015-05-22 08:21:39

标签: mongodb

我实际上是在编写一个简单的应用程序,我需要使用另一个应用程序的结果来减少请求的结果,我不知道处理它的最佳方法是什么。

说明

我有两个系列:

  • 用户:{_ id,姓名,姓氏}
  • Car:{_ id,model,#refOnUser}

我希望得到所有不在汽车记录中的用户。 这意味着我希望所有没有车的用户。

我的解决方案

  • 在Car上提出请求,并获取汽车列表
  • 向用户发出请求并获取用户列表,其中包含"不在"来自汽车列表的用户ID数组

这是一个很好的解决方案吗?

存在更好的东西吗?

1 个答案:

答案 0 :(得分:1)

从NoSQL数据库的设计角度来看,您应该创建一个用户集合。

  

案例1:如果用户和汽车之间存在一对一的关系:

您可以将 汽车维护为可嵌入用户 ,并具有以下内容:

User : {_id, name, surname, Car : {_id, model, #refOnUser}}
  

案例2:如果用户和汽车之间存在一对多的关系:

您可以将 汽车维护为可嵌入用户的列表 ,并具有以下内容:

User : {_id, name, surname, Car : [{_id, model, #refOnUser},....]}