云开发的aggregate聚合中,通过arrayElemAt获取到数组,怎么找到数组中的某个对象?
发布于 4 年前 作者 chao87 1699 次浏览 来自 问答
  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 回复
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()

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

回到顶部