集合中的数据格式如下,现在需要对data数组中的所有对象里的item模糊查询,返回匹配的对象,该如何查询呢?
官方文档里比较接近的是用filter,但是cond好像不能用or和RegExp来模糊查询所有item,所以有点不知道怎么写了
const _ = db.command
const $ = db.command.aggregate
db.collection('fruits').aggregate()
.project({
stock: $.filter({
input: '$stock',
as: 'item',
cond: $.gte(['$$item.price', 15])
})
})
.end()
先查出来自己再用正则过滤吧