收藏
回答

云开发如何联表查询外表数据数量?

动态列表分页查询,联表查询是否点赞,联表那里查出的是数据列表,问下这里可以直接查数量返回吗?


let result = await db.collection('social-dynamic')
    .aggregate()
    .sort({
      _createTime: -1
    })
    .skip(page)
    .limit(size)
    .lookup({
      from'social-user',
      localField: 'openid'//<输入记录的要进行相等匹配的字段>,
      foreignField: 'openid'//<被连接集合的要进行相等匹配的字段>,
      as'userInfo'//<输出的数组字段名>
    })
    .lookup({
      from'social-like',
      let: {
        did: '$_id'
      },
      pipeline: $.pipeline()
        .match({
          openid:openid
        })
        .project({
          _id: 0,
          title: 1,
          author: 1,
          stock: 1
        })
        .done(),
      as'userLikeds',
    })
    .project({
      _id: 1,
      _createTime: 1,
      imgUrls: 1,
      imgs: 1,
      openid,
      text: 1,
      userInfo: $.arrayElemAt(['$userInfo'0]),
      commentNum:1,
      likeNum:1,
      userLikeds:1
    })
    .end()
  



此处

.lookup({
      from'social-like',
      let: {
        did: '$_id'
      },
      pipeline: $.pipeline()
        .match({
          openid:openid
        })
        .project({
          _id: 0,
          title: 1,
          author: 1,
          stock: 1
        })
        .done(),
      as'userLikeds',
    })
回答关注问题邀请回答
收藏

2 个回答

  • 27
    27
    2022-05-31

    后来如何解决的?

    2022-05-31
    有用
    回复 4
    • @
      @
      2022-06-15
      2022-06-15
      回复
    • 27
      27
      2022-06-15回复@
      commetNum 和 likeNum 从哪来的?
      2022-06-15
      回复
    • @
      @
      2022-06-17回复27
      点赞和评论时候统计的字段+1
      2022-06-17
      回复
    • 27
      27
      2022-06-18回复27
      这样啊,我以为是直接获取联表的数量呢😅
      2022-06-18
      回复
  • 老张
    老张
    2021-11-12

    https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/command/aggregate/AggregateCommand.size.html

    2021-11-12
    有用
    回复 1
    • @
      @
      2021-11-12
      ??我是要在联表里查
      2021-11-12
      回复
登录 后发表内容