MongoDB支持在两个集合(collection)之间进行关联查询。有两种常见的方法:内连接和外连接。
内连接(内联接/内链接):只返回两个集合中有匹配的文档。通过使用$lookup操作符,可以在一个集合中的文档上执行关联查询,并将另一个集合的文档合并到查询结果中。
外连接(外联接/外链接):返回两个集合中所有的文档,即使在另一个集合中没有匹配的文档。可以使用 rightJoin操作符实现外连接。
下面是一个简单的内连接示例:
db.orders.aggregate([
$lookup:
from: "products",
localField: "product_id",
foreignField: "_id",
as: "order_details"
这个例子中,我们在orders集合上执行了一个$lookup操作,它将与products集合中的文档匹配的orders集合中的文档合并到了一个数组中,该数组的名称是"order_details"。