php mongodb的lookup,通过Aggregate $lookup操作 进行MongoDB的联表查询
Aggregate的 $lookup 和 $match ,可用于MangoDB的联表
直接上代码
两个表介绍
services表
number: 服务号码
flow: 流程名称
flows表
name: 流程名称
config: 流程配置
services表 和 flows 表,通过flow和name关联。
联表查询
想实现查询services表时,关联查询出引用的flow的详细配置,方便前台展示
用的aggrgete的Pipeline参数如下
[
{
'$lookup': {
'from': 'flows',
'localField': 'flow',
'foreignField': 'name',
'as': 'flow_detail'
}
}
]
带上过滤
想实现查询services表的指定service,关联查询出引用的flow的详细配置,方便前台展示
用的aggrgete的Pipeline参数如下
[
{
'$lookup': {
'from': 'flows',
'localField': 'flow',
'foreignField': 'name',
'as': 'flow_content'
}
}, {
'$match': {
'number': '6666'
}
}
]
基于egg-mongo-native编码
最后基于上述pipeline参数实现编码如下
let args = {
pipeline: [
{
'$lookup': {
'from': 'flows',
'localField': 'flow',
'foreignField': 'name',
'as': 'flow_content'
}
}, {
'$match': {
'number': '6666'
}
}
]
}
const result = await this.app.mongo.get('database').aggregate('services', args)
console.log(result)
php mongodb的lookup,通过Aggregate $lookup操作 进行MongoDB的联表查询相关推荐
- MongoDB联表查询aggregate : $lookup
参考:MongoDB联表查询 建表插入数据: db.createCollection("user") db.user.insertMany([{_id: ObjectId(&quo ...
- mongodb $lookup 联表查询
collection orders : orders record example collection items :items record example $lookup 联表 ...
- 微信小程序 lookup 联表查询
微信小程序 云开发 store 商品集合 _id: 'a8831daa5fef02f50153146e5902c2aa', openid: 'oMlDj5JiYiwxyBJm-d4JFY-Ov-LM' ...
- mongodb联表查询
数据库表 表一: 数据记录表 var mongoose = require('mongoose'),Schema = mongoose.Schema;var DocViewSchema = new S ...
- 《MySQL》入门基础知识点大全:数据库操作、增删改查、联表查询、常用函数、MD5加密、事务特性、隔离级别
MySQL基础知识大全 1.操作数据库 1.1 创建表 1.2 修改表名 1.3 增加表的字段 1.4 修改表的字段 1.4.1 修改表的字段 1.4.2 修改表名 1.5 删除表的字段 1.6 删除 ...
- cmd操作MySQL 范式、单表查询(日记 day 3)
今天记录一下设计范式,还有一些简单的查询操作 先来了解一下范式: 范式是分等级的,越高级的范式限制越多,而且,每条范式总是满足它前面的那些低等级范式 第一范式: 每一列都是不可分割的原子数据项 就比如 ...
- oracle数据库查询需步骤,PLSQL操作Oracle数据库之单表查询SQL语句 看完你就知道了...
Orcale数据库作为商业级的大型关系型数据库管理系统,以其较高的安全性和强大的可移植性赢得了市场的广泛认可,而PLSQL作为操作Oracle的编程语言的最佳选择,掌握其编程原理及基本的sql操作是掌 ...
- 微信小程序云开发云数据库_聚合操作_联表查询_对象数组某字段与另一集合的某字段相等匹配
目录 表结构 需求 Aggregate.unwind 查询操作代码 查询结果 表结构 错题表 wrong 单选题表 single 需求 连接错题表和单选题表,筛选出错题的题目ID.题目.答案.解析.用 ...
- MongoDB聚合(aggregate)常用操作及示例
简介 MongoDB 中聚合(aggregate)主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果. 有点类似 SQL 语句中的 count(*). 常用操作 表达式 描述 $mat ...
最新文章
- java添加窗体_添加的窗体
- leetcode算法题--Letter Case Permutation
- 深度操作系统 15 Beta——每一处都在“靓”变
- 互联网金融产品需要什么样的产品经理?
- netcore 编译 html,Asp.Net Core中的@ Html.Action
- 北京大学 软件工程1 软件 软件工程 软件开发 软件工程框架
- 菜鸟学Linux 第026篇笔记 LVM
- pyqt5 界面切换
- 监狱干警定位管理系统
- office使用latex公式
- 计算机创客教育,浅析职业教育中计算机学科的创客教育
- 三个网络接口计算机主板,电脑主板接口安装详解
- 学习笔记(01):程序员的数学:微积分-常用导数(一):最常用到的技巧
- 三次握手与四次挥手的爱恨情仇
- Mysql组合索引使用和用法
- Windows XP免密码自动登录
- mysql数据源配置
- nodejs中的读取文件fs与文件路径path
- 金多多看盘新周期还在路上
- 局域网传输工具需求分析