MongoDB中多表关联查询($lookup)的深入讲解

分类:文章教程 日期: 点击:0

一. 聚合框架

聚合框架是MongoDB的高级查询语言,它允许我们通过转换和合并多个文档中的数据来生成新的单个文档中不存在的信息。

聚合管道操作主要包含下面几个部分:

命令 功能描述
$project 指定输出文档里的字段.
$match 选择要处理的文档,与fine()类似。
$limit 限制传递给下一步的文档数量。
$skip 跳过一定数量的文档。
$unwind 扩展数组,为每个数组入口生成一个输出文档。
$group 根据key来分组文档。
$sort 排序文档。
$geoNear 选择某个地理位置附近的的文档。
$out 把管道的结果写入某个集合。
$redact 控制特定数据的访问。

$lookup

多表关联(3.2版本新增)

在本篇幅中,我们聚焦$lookup的使用。

二. $lookup的功能及语法

1. 主要功能 是将每个输入待处理的文档,经过$lookup 阶段的处理,输出的新文档中会包含一个新生成的数组列(户名可根据需要命名新key的名字 )。数组列存放的数据 是 来自 被Join 集合的适配文档,如果没有,集合为空(即 为[ ])

2. 基本语法

{
 $lookup:
 {
 from: ,
 localField: ,
 foreignField: ,
 as: 
 }
}
标签:

网站声明

1、本站所有软件和资料来源互联网,仅供个人学习和研究使用,不得用于任何商业用途。
2、如有侵犯您商标权、著作权或其他合法权利的,请联系我们,本站将在第一时间对此进行核实并处理。
3、本站所有可下载资源,都是按照“原样”提供,本站并未对其做过任何改动。本站不保证本站提供的下载资源的准确性、安全性和完整性。同时,本站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。
4、继续浏览本站,即代表您遵守此声明。