收藏
回答

云函数调用云数据库 聚合函数match某个入参是数组的问题?

我在使用云数据库进行多表查询时,match一个参数是一个数组,我先是用控制台中用函数可查出结果。

db.collection('tea').aggregate()
.match(
{
status: _.eq('1'),
title: new db.RegExp({
regexp: '',
options: 'i',
}),
type: _.or([_.eq('1'), _.eq('2')])
}
)


使用云函数调用时,将数组元素循环出来组装。如下:

    blogTypeMatch = blogTypeList.map(item => {
      return _.eq(item)
    })
    searchParamMapch['type'] = _.or(blogTypeMatch)
  }
db.collection('tea').aggregate()
    .match(searchParamMapch)
...


成功获取到数据。

后来又尝试使用

_.in()

也能获取到。

最后一次编辑于  2020-11-16
回答关注问题邀请回答
收藏

1 个回答

  • 美味怪咖
    美味怪咖
    2020-11-16

    已解决。业务逻辑上面出错。非api问题。

    调试之后_or和_in都可行

    2020-11-16
    有用 1
    回复
登录 后发表内容
问题标签