MongoDB聚合:$lookup
在MongoDB中,$lookup
操作符用于创建一个在文档之间的左连接。这个操作符可以用于将两个集合的文档合并在一起,类似于SQL中的JOIN操作。
以下是一个使用$lookup
的例子,假设我们有两个集合:orders
和products
。我们想将orders
中的每个订单与products
中对应的产品信息合并。
db.orders.aggregate([
{
$lookup: {
from: "products", // 要联接的集合名
localField: "product_id", // orders集合中用于联接的字段
foreignField: "_id", // products集合中用于联接的字段
as: "product_info" // 添加到orders文档中的字段名,包含联接的文档
}
}
]);
这个查询会将orders
集合中的每个文档与products
集合中_id
字段与product_id
字段相匹配的文档进行合并,并将合并后的文档作为新的数组字段product_info
添加到orders
集合的文档中。
评论已关闭