云开发中云函数聚合阶段怎样检索对象数组中的值一个对象值?

发布于 9 年前作者 gang795855 次浏览最后编辑 9 年前来自 issues
{
    id: 1234,
    type: 'a',
    subs: [
        { time: 123001, val: 'a' },
        { time: 123002, val: 'b' },
        { time: 123003, val: 'c' }
    ]
}

在云开发中的聚合阶段里,怎样查找对象里的一个数组对象中一个字段是否含有指定的值,比如说 val是否含有a?

1 回复
shenjing
shenjing1 楼6 年前

const _ = db.command

const $ = db.command.aggregate

db.collection('table').aggregate()  .project({    subs: $.filter({      input: '$subs',      as: 'item',      cond: $.eq(['$$item.val', 'a'])    })  })  .end()