当前位置:Gxlcms > 数据库问题 > mongodb关联查询

mongodb关联查询

时间:2021-07-01 10:21:17 帮助过:12人阅读

使用DBRefs

DBRefs中有三个字段 -

  • $ref - 此字段指定引用文档的集合
  • $id - 此字段指定引用文档的_id字段
  • $db - 这是一个可选字段,并包含引用文档所在的数据库的名称

假设一个具有DBRef字段address的示例用户文档,如代码片段所示 -

{ "_id":ObjectId("348362491fjaskdlf2314"), "address": { "$ref": "address_home", "$id": ObjectId("sfaafdf4137832149fssa"), "$db": "yiibai"}, "contact": "13800138000", "dob": "1991-12-12", "name": "Maxsu" }
使用DBef

新建collection   role角色表

db.role.insert([{role:"admin"},{role:"root"},{role:"guest"}])

技术分享

 

新建用户user表

db.user.insert([
{roleId:[new DBRef(‘role‘,ObjectId("59b7910c943eabe738230d34")),new DBRef(‘role‘,ObjectId("59b7910c943eabe738230d35"))]},
{roleId:[new DBRef(‘role‘,ObjectId("59b7914c943eabe738230d36"))]}
])

 

‘role‘是刚才创建的role表名,objectId是当前的这条user记录要关联哪些role表中的记录(role中的id)

技术分享

 

 查询:

查指定id的user记录:

技术分享

查指定id中的roleId字段中的第1个关联的role信息

 

技术分享

查指定id中的roleId字段中的第2个关联的role信息

技术分享

 http://www.yiibai.com/mongodb

mongodb关联查询

标签:images   ddr   insert   use   toolbar   mon   bsp   文档   分享   

人气教程排行