小编Rav*_*iya的帖子

如何使用 DBRef 加入 MongoDB

我有两个文档,这些文档之间有 DBRef 关系。

{
  "_id": 77,
  "title": "Test title",
  "status": "in-progress",
  "reporter": {
    "$ref": "User",
    "$id": ObjectId("5daf022549a36e319879f357"),
    "$db": "test"
  },
  "priority": "high",
  "project": {
    "$ref": "Project",
    "$id": 30,
    "$db": "gsc"
  }
}
Run Code Online (Sandbox Code Playgroud)

用户文档:

{
  "_id": ObjectId("5daf022549a36e319879f357"),
  "username": "user1",
  "email": "test@gmail.com",
  "is_active": true,
  "firstName": "user-1"
}
Run Code Online (Sandbox Code Playgroud)

我尝试了以下查询,但没有得到正确的结果

{
  "_id": 77,
  "title": "Test title",
  "status": "in-progress",
  "reporter": {
    "$ref": "User",
    "$id": ObjectId("5daf022549a36e319879f357"),
    "$db": "test"
  },
  "priority": "high",
  "project": {
    "$ref": "Project",
    "$id": 30,
    "$db": "gsc"
  }
}
Run Code Online (Sandbox Code Playgroud)

如何执行JOIN?另外,想要同时记录所有数据吗? 我想要来自任务文档的数据并建议如何加入项目字段。

需要这样的结果:

{
"_id" …
Run Code Online (Sandbox Code Playgroud)

mongodb mongodb-query aggregation-framework

7
推荐指数
1
解决办法
173
查看次数