收藏
回答

lookup关联查询如何加入原表数据?

// 主表
{
  "id""1",
  "list": [
    {
      "bookid""123",
      "num"10
    },
    {
      "bookid""456",
      "num"20
    }
  ]
}
// 关联表
[
  {
    "bookid""123",
    "name""嗷嗷",
    "price"100
  },
  {
    "bookid""456",
    "name""f f f发发发",
    "price"200
  }
]
// 期望关联后结果
{
  "id""1",
  "list": [
    {
      "bookid""123",
      "name""嗷嗷",
      "price"100,
      "num"10
    },
    {
      "bookid""456",
      "name""f f f发发发",
      "price"200
      "num"20
    }
  ]
}


回答关注问题邀请回答
收藏

1 个回答

  • 游戏人生
    游戏人生
    01-09
    试下这个
    db.collection('主表').aggregate()
      .lookup({
        from: '关联表',
        localField: 'bookid',
        foreignField: 'bookid',
        as: 'list',
      })
      .end()
      .then(res => console.log(res))
      .catch(err => console.error(err))
    
    l另外你这个主表 {}?  是云函数吗?
    


    01-09
    有用
    回复 1
    • 乘风破浪
      乘风破浪
      01-10
      是云函数,你这个关联出来的结果不对,被关联的字段num会丢失
      01-10
      回复
登录 后发表内容