如果我有以下对象

obj

:

{

"abc1": "xyz1",

"abc2": "xyz2",

"abc3": "xyz3"

}

我想做一个聚合,比如:

db.collection.aggregate([

{

"$match": {

"_id": {

$in:

Object.keys(obj)

}

}

},

{

"$lookup": {

"from": "subdocument",

"pipeline": [

{

"$match": {

"_id": ObjectId(matching_value)

}

},

],

"as": "subdocument"

}

},

{ "$unwind": "$subdocument" }

])

我怎么得到

$lookup

要匹配对象键以匹配对象值的管道?有可能吗?

所以这是一个单一的数据库调用版本:

let obj = {

"abc1": "xyz1",

"abc2": "xyz2",

"abc3": "xyz3"

}

for (let key in obj)

{

db.collection.aggregate([

{

"$match": {

"_id":

ObjectId(key)

}

},

{

"$lookup": {

"from": "subdocument",

"pipeline": [

{

"$match": {

"_id": ObjectId(obj[key])

}

},

],

"as": "subdocument"

}

},

{ "$unwind": "$subdocument" }

])

}

示例集合

db.maindocuments

[

{

_id: "abc1",

data: "data"

},

{

_id: "abc2",

data: "data"

},

{

_id: "abc3",

data: "data"

}

]

db.subdocuments

[

{

_id: "xyz1",

data: "data"

},

{

_id: "xyz2",

data: "data"

},

{

_id: "xyz3",

data: "data"

}

]

php mongodb lookup,mongodb-在$lookup管道中使用$match$进行聚合相关推荐

  1. MongoDB学习笔记~管道中的分组实现group+distinct

    2019独角兽企业重金招聘Python工程师标准>>> mongoDB的管道是个好东西,它可以将很多操作批处理实现,即将多个命令放入一个管道,然后去顺序的执行它们,今天我要说的是,利 ...

  2. java mongodb 语句,MongoDB语句

    //库: show dbs     //显示所有库 db     //当前库 use 库名    //自动创建新库 db.dropDatabase()     //删除库 show tables(co ...

  3. SpringBoot 集成 Spring Data Mongodb 操作 MongoDB 详解

    一.MongoDB 简介 MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,且与关系数据库的最为相像的.它支持的数据结构非常松散,是类似 json 的 bso ...

  4. php mongodb aggregate,MongoDB aggregate 运用篇个人总结

    最近一直在用mongodb,有时候会需要用到统计,在网上查了一些资料,最适合用的就是用aggregate,以下介绍一下自己运用的心得.. aggregate() 方法 MongoDB中聚合的方法使用a ...

  5. MongoDB:mongodb在项目开发时的安全验证、分页查询操作

    MongoDB:mongodb在项目开发时的安全验证.分页查询操作. 对于数据库而言,在项目应用中都需要安全验证,不然,就会报错,呵呵-- 现在贴出来我在项目中是怎么做的. 原创文章,转载请注明出处: ...

  6. BigData之MongoDB:MongoDB基于分布式文件存储数据库的简介、下载、案例应用之详细攻略

    BigData之MongoDB:MongoDB基于分布式文件存储数据库的简介.下载.案例应用之详细攻略 目录 MongoDB的简介 1.MongoDB的主要功能特性 2.对MongoDB进行增删改查( ...

  7. mongo 唯一约束索引_快速掌握mongoDB(三)——mongoDB的索引详解

    1 mongoDB索引的管理 本节介绍mongoDB中的索引,熟悉mysql/sqlserver等关系型数据库的小伙伴应该都知道索引对优化数据查询的重要性.我们先简单了解一下索引:索引的本质就是一个排 ...

  8. PHP mongodb运用,MongoDB在PHP下的应用学习笔记

    1.连接 mongodb默认端口是:27017,因此我们连接mongodb:$mongodb = new Mongo('localhost') 或者指定IP与端口 $mongodb = new Mon ...

  9. 安装MongoDB Install MongoDB on Ubuntu

    MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和 非关系数据库之间的产品,是非关系数据库当中 ...

  10. golang常用库之-mgo.v2包、MongoDB官方go-mongo-driver包、七牛Qmgo包 | go操作mongodb、mongodb bson

    文章目录 golang常用库之-mgo.v2包.MongoDB官方go-mongo-driver包.七牛Qmgo包 | go操作mongodb.mongodb bson 一.[不推荐]mgo.v2包 ...

最新文章

  1. iOS 9音频应用开发基础教程(大学霸内部资料)
  2. Hive架构及安装部署(远程数据库模式MySQL)
  3. Qt Creator美化源代码
  4. 俞栋谈腾讯AI Lab进展;腾讯AI加速器第二期开始招募
  5. Pxe+Kickstart批量网络安装操作系统
  6. 如何用Python进行数据探索,探索竞赛优胜方案?
  7. LeetCode 19删除链表的倒数第N个节点-中等
  8. 封装js千分位加逗号和删除逗号
  9. 【python教程入门学习】零基础想转行学python,过来人提醒大家几点
  10. 一个小小Css3动画的案例
  11. linux内存——/proc/sys/vm/drop_caches
  12. 4.6 Spark SQL 数据清洗
  13. Android实现淘宝体验的商品列表排序分类点击事件
  14. 推荐几个2021年App数据统计平台,分析数据运营必备工具
  15. 5G智慧合杆的城市商业区应用
  16. MySQL数据库实操教程(18)——数据库事务及其隔离级别
  17. 使用git在项目中的一些经验
  18. 海康对讲系统人脸门口机详细接线图以及调试窗口
  19. 【Hive】Hive建表基本语法及解释
  20. 2-6 链表逆序及其C++实现

热门文章

  1. Sourcemap是什么?Sourcemap的作用及用法概括
  2. delphi 隐藏指定程序的托盘图标
  3. CSU 1337 费马大定理
  4. C4D动画如何提交云渲染农场快速渲染?
  5. 计算机一直进入安全模式开机,电脑启动时自动进入安全模式怎么办
  6. 教你自己如何在Windows10系统创建虚拟专用网络
  7. IOS的疯狂游戏:浮躁气氛正笼罩整个iOS游戏市场
  8. 看我如何自制安全的远程控制工具
  9. 16部趣味数学纪录片
  10. Google商店应用上架注意事项