mongodb aggregate.lookup()多表查询问题?

wuli华仔 2018-06-25 02:43:29
mysql:
select pb.name
from person_base pb
left join person p on p.person_base_id = pb.id
left join institution ins on ins.id = p.institution_id
mongodb:
List list = Arrays.asList(
Aggregates.lookup("v1_block_5b179726ff2da217e05bf7bc","data_id","data_person_base_id","p"), Aggregates.project(Projections.fields(Projections.include("data_name"),Projections.excludeId()))

AggregateIterable<Document> mongoCollectionList = mongoDbStore.aggregate("v1_block_5b179837ff2da217e05bf7be",list);
我怎么把上面的sql语句转成正确的mongodb语句,我只能关联一张表,不能关联第二章机构表
...全文
522 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
程 程 程序员 2020-03-26
  • 打赏
  • 举报
回复
我的是关联的两张表,但是表A 关联的表B的两个字段,也没搞出来
sillyboy_wang 2019-04-30
  • 打赏
  • 举报
回复
因为我这边也遇到了三张表互相关联,然后各种百度,各种懵逼
stacksoverflow 2018-06-25
  • 打赏
  • 举报
回复
参考一下
https://stackoverflow.com/questions/37086387/multiple-join-conditions-using-the-lookup-operator
适用人群MongoDB4.x学习的人群,IT类工作人员课程概述MongoDB目前NoSql中最流行的数据库,互联网的必备神器,目前最新的版本4.x;本课程针对4.x进行搭建和讲解;MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。     MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是可以应用于各种规模的企业、各个行业以及各类应用程序的开源数据库。作为一个适用于敏捷开发的数据库,MongoDB的数据模式可以随着应用程序的发展而灵活地更新。与此同时,它也为开发人员 提供了传统数据库的功能:二级索引,完整的查询系统以及严格一致性等等。 MongoDB能够使企业更加具有敏捷性和可扩展性,各种规模的企业都可以通过使用MongoDB来创建新的应用,提高与客户之间的工作效率。MongoDB是专为可扩展性,高性能和高可用性而设计的数据库。它可以从单服务器部署扩展到大型、复杂的多数据中心架构。利用内存计算的优势,MongoDB能够提供高性能的数据读写操作。 MongoDB的本地复制和自动故障转移功能使您的应用程序具有企业级的可靠性和操作灵活性。

50,545

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧