首页 > 数据库 >mongodb表关联

mongodb表关联

时间:2023-11-15 17:56:25浏览次数:29  
标签:publisher publisherName ... mongodb 关联 books Reilly id

 

books表

db.books.insert(
  {_id:123, book_name:"Head First Java", 
  author:"Kathy Sierra", 
  publisher:"O'Reilly"}
);

 

publishers表

db.publishers.insert(
  {_id:123, publisherName:"O'Reilly", 
  location:"San Francisco"}
);

 

关联查询:

db.books.aggregate([ 
    {
        $lookup: 
        {
            from: "publishers", ##从哪个表查询
            localField: "publisher",      ##
            foreignField:"publisherName", 
            as:"publisher_data"
        }
    }
]);

 

mongos> db.books.aggregate([ 
...     {
...         $lookup: 
...         {
...             from: "publishers",
...             localField: "publisher",
...             foreignField:"publisherName", 
...             as:"publisher_data"
...         }
...     }
... ]);
{ "_id" : 123, "book_name" : "Head First Java", "author" : "Kathy Sierra", "publisher" : "O'Reilly", "publisher_data" : [ { "_id" : 123, "publisherName" : "O'Reilly", "location" : "San Francisco" } ] }

 

使用说明:

{
   $lookup:
     {
       from: <collection to join>,
       localField: <field from the input documents>,
       foreignField: <field from the documents of the "from" collection>,
       as: <output array field>
     }
}

 

标签:publisher,publisherName,...,mongodb,关联,books,Reilly,id
From: https://www.cnblogs.com/hxlasky/p/17834410.html

相关文章

  • 数据分享|WEKA关联规则挖掘Apriori算法在学生就业数据中的应用
    全文链接:https://tecdat.cn/?p=34254原文出处:拓端数据部落公众号关联规则挖掘作为数据挖掘的一个重要分支,对于发现数据之间的潜在关联和规律具有重要意义。在教育领域,学生就业数据是一类重要的数据资源,通过关联规则挖掘可以揭示学生就业相关的规律和影响因素。本文旨在探讨WEKA......
  • 数据库操作入门:PyMongo 和 MongoDB 的基本用法
    MongoDBMongoDB是一种流行的NoSQL数据库,它将数据存储在类似JSON的文档中,使数据库非常灵活和可扩展PyMongoPython需要一个MongoDB驱动程序来访问MongoDB数据库。在本教程中,我们将使用MongoDB驱动程序"PyMongo"。建议使用PIP来安装"PyMongo",确保您的Python环境已安装PIP。在命......
  • 高效使用 PyMongo 进行 MongoDB 查询和插入操作
    插入到集合中:要将记录(在MongoDB中称为文档)插入到集合中,使用insert_one()方法。insert_one()方法的第一个参数是一个包含文档中每个字段的名称和值的字典。importpymongomyclient=pymongo.MongoClient("mongodb://localhost:27017/")mydb=myclient["mydatabase"]mycol=......
  • f通过new关键词进行函数调用,之后无论如何都会返回一个与F关联的普通对象(因为不是通过
    varF=function(){};Object.prototype.a=function(){};Function.prototype.b=function(){};varf=newF();关于这段代码的描述,正确的是:Af能取到a,但取不到bBf能取到a,bCF能取到b,不能取到aDF能取到a,不能取到b正确答案:A网上有一道美团外卖的面试题是这样的:Function......
  • Mongodb安装-Linux
    查看服务器centos版本:cat/etc/redhat-release1、进入Mongodb官网:https://www.mongodb.com/,下载安装包  2、上传taz文件到服务器/home目录下,执行命令://解压压缩包tar-zxvfmongodb-linux-x86_64-rhel70-7.0.3.tgz//修改文件夹名mvmongodb-linux-x86_64-rhel70-......
  • MongoDB基础入门学习
    MongoDB基础入门此视频为学习尚硅谷MongoDB基础入门的学习记录导航目录MongoDB基础入门导航一、数据库什么是数据库?为什么要有数据库?数据库能做什么?数据库的服务器和客户端数据库的分类二、MongoDB常见命令安装MongoDBMongoDB的常见命令MongoDB的数据库分类操作MongoDB数据库......
  • js常见的继承方式包括原型链继承、借用构造函数继承、组合继承、原型式继承、寄生式继
    js常见的继承方式包括原型链继承、借用构造函数继承、组合继承、原型式继承、寄生式继承、寄生组合式继承,以及ES6新增的class继承,但不包括关联继承https://www.cnblogs.com/Leophen/p/11401734.html构造函数继承是每次继承都会把父类的所有属性方法全部拷贝一份,而对于公用的方法......
  • vue-cli-service vue.config.js配置 productionSourceMap与webpack中的devtool 关联详
    https://webpack.js.org/configuration/devtool/https://cli.vuejs.org/zh/config/#productionsourcemap https://github.com/vuejs/vue-cli/blob/f0f254e4bc81ed322eeb9f7de346e987e845068e/packages/%40vue/cli-service/lib/config/prod.js#L7 可以在源码中看到if(pro......
  • 如何防止IP和账户关联?
    保护个人IP地址和账户的隐私是防止隐私泄露、信息泄漏以及支付安全等问题的关键。VMLogin虚拟浏览器作为一种隐私工具,可以帮助您解决问题。一、IP地址的重要性IP地址是您在互联网上访问和交流的标识符。通过IP地址,他人或广告商可以追踪您的在线活动、地理位置和网络行为。如果您的I......
  • 数组&队列&关联数组的总结
    定宽数组:可以直接赋值,也可以先声明再赋值其中还有多维数组intarray2[0:7][0:3];intarray3[8][4];//先个后位intascend[4]='{0,1,2,3};intdescend[5];descend='{4,3,2,1,0};descend[0:2]='{5,6,7};ascend='{4{8}};descend='{9,8,default:-1};数组的声明全在左......