mongodb两个表关联查询

MongoDB支持在两个集合(collection)之间进行关联查询。有两种常见的方法:内连接和外连接。

内连接(内联接/内链接):只返回两个集合中有匹配的文档。通过使用$lookup操作符,可以在一个集合中的文档上执行关联查询,并将另一个集合的文档合并到查询结果中。

外连接(外联接/外链接):返回两个集合中所有的文档,即使在另一个集合中没有匹配的文档。可以使用 l e f t J o i n leftJoin和 rightJoin操作符实现外连接。

下面是一个简单的内连接示例:

db.orders.aggregate([
      $lookup:
           from: "products",
           localField: "product_id",
           foreignField: "_id",
           as: "order_details"

这个例子中,我们在orders集合上执行了一个$lookup操作,它将与products集合中的文档匹配的orders集合中的文档合并到了一个数组中,该数组的名称是"order_details"。

  •