Mongodb查询引用

1 var result = db.users.findOne({"name":"Tom Wu"},{"address_ids":1,_id:0})
2
3 var address = db.address.find({"_id":{"$in":result["address_ids"]}})

用户表中的数据结构如下

{
  "_id":ObjectId("52202135882200383568"),
 "contact":"15074966728" ,
 "dob":"1980-10-18",
  "name":"Tom Wu" ,
  "address_ids":[
      ObjectId("52fff20255863zd616862258"),
      ObjectId("6325846682126886335986")
    ]
}

引用式关系

引用式关系是设计数据库时经常用到的方法,这种方法把用户数据文档和用户地址数据文档分开,通过引用文档的id字段来建立关系。

时间: 2024-10-11 17:23:04

Mongodb查询引用的相关文章

mongodb查询find(

mongodb查询find(2012-01-05 11:38:10) 转载▼ 标签: it 分类: mongoDB mongodb查询find 指定返回的键,通过find或findOne的第二个参数指定想要的键. > db.visithomepage.find({},{"user_id" : 1,"time" :1}) { "_id" : ObjectId("4e0713be3ded0ab30ccb4b81"), &qu

【原创】为什么Mongodb索引用B树,而Mysql用B+树?

引言 好久没写文章了,今天回来重操旧业.毕竟现在对后端开发的要求越来越高,大家要做好各种准备. 因此,大家有可能遇到如下问题 为什么Mysql中Innodb的索引结构采取B+树? 回答这个问题时,给自己留一条后路,不要把B树喷的一文不值.因为网上有些答案是说,B树不适合做文件存储系统的索引结构.如果按照那种答法,自己就给自己挖了一个坑,很难收场.因此,就有了这篇文章的诞生~ 文末附面试指南! 正文 这里的Mysql指的是Innodb的存储引擎下的索引结构,其他存储引擎我们暂时不讨论. B树和B+

MongoDB查询语句

看了些资料,对应只需要知道怎么查询和使用mongodb的我来说,这些足够啦. 左边是mongodb查询语句,右边是sql语句.对照着用,挺方便. db.users.find() select * from users db.users.find({"age" : 27}) select * from users where age = 27 db.users.find({"username" : "joe", "age" : 

查询引用了某张表的所有存储过程

在开发中,有时需要修改某张表的结构,在修改之前需要知道有哪些存储过程用到了该表,在存储过程少的情况下,我们可以直接一个个去查看,如果存储过程数量非常大,这种方法就不现实了.以下给出了一个简单的查找方法,分享一下,如果有什么错误或考虑不全面的地方,欢迎大家指出. DECLARE @KeyWord nvarchar(100) SET @KeyWord = '' --设置需要搜索的关键词(如:表名,存储过程名,视图名等) SELECT b.name,a.definition FROM sys.all_

MongoDB查询集合中的文档

MongoDB查询集合中的文档 参考资料:http://blog.csdn.net/qq_36040184/article/details/54355085 测试: 集合中插入数据 > db.chenji.insert({"name":"张三","年纪":"三年级","年龄":"14"}) WriteResult({ "nInserted" : 1 }) >

MongoDB 查询分析

MongoDB 查询分析可以确保我们建议的索引是否有效,是查询语句性能分析的重要工具. MongoDB 查询分析常用函数有:explain() 和 hint(). 使用 explain() explain 操作提供了查询信息,使用索引及查询统计等.有利于我们对索引的优化. 接下来我们在 users 集合中创建 gender 和 user_name 的索引: >db.users.ensureIndex({gender:1,user_name:1}) </p> <p>现在在查询语

mongodb查询文档

说到查询,我们一般就想起了关系型数据库的查询了,比如:order by(排序).limit(分页).范围查询(大于某个值,小于某个值..,in查询,on查询,like查询等待很多),同样mongodb同样也支持这些操作,只是语法不同,比如排序:mongodb里面使用了skip(field:1/-1)方法,下面就来一一介绍一下: 一.mongodb查询文档 1.查询文档之find() : 不加条件是查询集合全部的数据 语法:db.collectionName.find({条件},{field:tr

MongoDB 查询文档

语法 MongoDB 查询数据的语法格式如下: >db.COLLECTION_NAME.find() find() 方法以非结构化的方式来显示所有文档. 如果你需要以易读的方式来读取数据,可以使用 pretty() 方法,语法格式如下: >db.col.find().pretty() pretty() 方法以格式化的方式来显示所有文档. 实例 以下实例我们查询了集合 col 中的数据: > db.col.find().pretty() { "_id" : Object

【Mongodb教程 第七课 】MongoDB 查询文档

find() 方法 要从MongoDB 查询集合数据,需要使用MongoDB 的 find() 方法. 语法 基本的find()方法语法如下 >db.COLLECTION_NAME.find() find() 方法将在非结构化的方式显示所有的文件. pretty() 方法 结果显示在一个格式化的方式,可以使用 pretty() 方法. 语法: >db.mycol.find().pretty() 例子 >db.mycol.find().pretty() { "_id":