收藏
回答

云开发的aggregate聚合中,通过arrayElemAt获取到数组,怎么找到数组中的某个对象?

  var resData= await db.collection("demoping").aggregate().match({
    openid: 'ofibX5Qt8pL_sjqCTSbUcuBqLlhU'
  }).lookup({
    from'demonews',
    localField: 'nsid',
    foreignField: '_id',
    as:'titObj'
  }).project({    
    obj:$.arrayElemAt(['$titObj'0])
  }).sort({
   posttime:-1
  }).skip(3).limit(10).end()


project新字段处理中,想要找到$.arrayElemAt(['$titObj', 0])数组中的title属性。


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

1 个回答

  • o0o有脾气的酸奶
    o0o有脾气的酸奶
    2020-06-29
    var resData= await db.collection("demoping").aggregate().match({
        openid: 'ofibX5Qt8pL_sjqCTSbUcuBqLlhU'
      }).lookup({
        from: 'demonews',
        localField: 'nsid',
        foreignField: '_id',
        as:'titObj'
      }).addFields({
            obj:$.arrayElemAt(['$titObj'0])
        }).project({    
        objTitle:'$obj.title'
      }).sort({
       posttime:-1
      }).skip(3).limit(10).end()
    

    若认为该回答有用,给回答者点个[ 有用 ],让答案帮助更多的人

    2020-06-29
    有用 3
    回复
登录 后发表内容
问题标签