繁体   English   中英

mongodb:如何从两个以上的集合中获取文档

[英]mongodb: how to get documents from more than 2 collections

我在mongodb中有2个收藏集

 collection1 **user's**

_id:ObjectId("5a1bedd219001b168e33835e")
password:$2a$05$H5wz7kCm/UIGYpvGWruV0eRd.Blgndd4i8pzZcyW7uCG3U4kUzZM2
socket_id:ljlZzY73BZjnwjZBAAAD
nickName:des
email:desmond.dd31@gmail.com
__v:0

collection2 **messages**

_id:ObjectId("5a1bedd219001b168e33835e")
userId:5a1bedd219001b168e33835e
message: test
time: 2017-11-28 16:57:44.000
__v:0

我想从“消息集合”中获取每个用户的消息,消息集合中的userId是用户集合中用户的对象ID。

从两个以上的集合中获取文档的最佳方法是什么?

您必须执行查找查询,并且该查询仅适用于MongoDB> 3.2+。 更多信息在这里

如果mongodb上具有3.4或更高版本,请使用查找

  $lookup:
 {
   from: <collection to join>,
   localField: <field from the input documents>,
   foreignField: <field from the documents of the "from" collection>,
   as: <output array field>
 }

有关更多参考,请点击此处$ Lookup

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM