首页 > 数据库 >MongoDB联表查询

MongoDB联表查询

时间:2022-12-21 10:00:59浏览次数:59  
标签:www name MongoDB 查询 result 联表 关联 id

原文:https://www.cnblogs.com/-abm/p/10390543.html

表A:

1 2 3 4 5 6 id name --------------------------- 1 Tom 2 Roger 3 Mars 4 Brent

表B:

1 2 3 4 5 6 id result ------------------------- 1 90 2 60 3 88 4 75

需求

将表A中的name和表B中的result关联查询。

思路

通过关联条件id关联name和result

mysql 用left join,mongo用$lookup

语句

db."A表".aggregate([
    {
        "$lookup": {                   //通过loolup关联两个表,相当于left join 
            "from": "B表",             //同一个数据库下需要被关联的集合名
            "localField": "A_id",      //A表需要关联的键
            "foreignField": "B_id",    //B表需要关联的键
            "as": "B_list"             //B表的别名,下面输出B表字段时用到
        }
    },
    {
        "$match": {
            "A_id": '1'               //查询条件,相当于where
        }
    },
    {
        "$project": {                      //决定要显示的字段,相当于select的作用
            "name": 1,
            "B_result": "$B_list.result"
        }
    }])

 

结果

1 2 3 4 name B_result ---------------------------------   Tom 90

注意

1 只能两个表联合查询
2 不能跨库联合

更复杂的查询:https://www.cnblogs.com/xuliuzai/p/10055535.html

标签:www,name,MongoDB,查询,result,联表,关联,id
From: https://www.cnblogs.com/bruce1992/p/16995596.html

相关文章

  • Oracle数据库业务SQL优化实战-时间区间查询案例
    背景查询字段其实比较多,我选择聚焦在瓶颈点上,让我们开始吧功能背景简介:我们在一个进入数据中心的入口设置了一台记录人员进出的机器,由保卫员操作记录人员进出(通过换取通......
  • django 7 模型层查询
    今日内容详细目录今日内容详细图书管理系统讲解聚合查询分组查询F与Q查询图书管理系统讲解1.表设计 先考虑普通字段再考虑外键字段 数据库迁移、测试数据录入2.首页......
  • Cesium针对ArcGIS服务进行属性查询(二维)
    起因项目原有的二维数据很多,需要针对用户注册的二维服务在Cesium上进行属性查询的功能(注意这些二维服务都是Arcgis的MapServer)PS:这种查询方法也适用于所有不是Arcg......
  • SQLserver查询锁表和解锁
    1、查询锁表语句selectrequest_session_idspid,OBJECT_NAME(resource_associated_entity_id)tableNamefromsys.dm_tran_lockswhereresource_type='OBJECT'......
  • AWS AppSync 添加 自定义 坐标查询 V2
    res.vtl#set($items=[])#foreach($entryin$context.result.hits.hits)#if(!$foreach.hasNext)#set($nextToken=$util.base64Encode($util.toJso......
  • 龙邦快递 | 快递单号查询API
    本期讲解:龙邦快递查询快递单号的方法。纯干货,强烈建议收藏/转发给技术人员和管理人员学习。这里推荐大家去抖音(快递鸟)查看视频教程下面具体讲解实现过程。首先我们准备......
  • 微课程 | 第十八课《慢查询日志》
    微课程|第十八课《慢查询日志》今天是微课程《DBLE快速上手》的最后一课:慢查询日志。我们DBLE的慢查询日志兼容这两个工具:MySQL的mysqldumpslowPercona的pt-query......
  • 技术分享 | 实时慢查询监控系统构建
    作者:王春涛目前是多点Dmall数据库架构师,更早是聚美数据库团队负责人,擅长高并发下数据库架构,运维保障,数据库平台建设。本文来源:原创投稿*爱可生开源社区出品,原创内容未经授权......
  • 技术分享 | 为什么 SELECT 查询选择全表扫描,而不走索引?
    作者:Charizard爱可生服务团队成员,主要负责公司数据库运维产品问题诊断;努力在数据库和IT领域里摸爬滚打中。本文来源:原创投稿*爱可生开源社区出品,原创内容未经授权不得随意......
  • 聚合查询、分组查询、ORM中如何给表再次添加新的字段、F与Q查询、ORM查询优化、ORM事
    今日内容聚合查询在ORM中支持单独使用聚合函数,需要使用aggregate方法。聚合函数:Max最大、Min最小、Sum总和、Avg平均、count统计fromdjango.db.modelsimportMax,......