云开发数据库在普通数组中使用正则进行模糊查询?

发布于 7 年前作者 jun3611018 次浏览最后编辑 7 年前来自 issues

参考api文档https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/command/Command.elemMatch.html使用elemMatch结合正则进行数组模糊查询,但是不行,求指点



数据库 group 有结构如下

[

{

id:1,

names:[‘李大海’,‘李大富’,‘李大嘴’,‘陈五’,’张四‘],

from:‘深圳’

}

,

{

id:2,

names:[‘张看’,‘陈海’,’张四‘],

from:‘上海’

}

{

id:3,

names:[‘刘汗’,‘杜堡’,’陈氏‘],

from:‘北京’

}

{

id:4,

names:[‘李百’,‘白星’,’陈开‘],

from:‘北京’

}

]

要求:找出数据库中names带姓李的全部项,就是id1和4的项,按道理,用

db.collection(‘group’)

.where({

names:_.elemMatch( db.RegExp({

            regexp: ‘李’,

            options: ‘i’,

          })

	  )

})

.get()

可以得到的,但是不行,求官方指点

2 回复
leigao
leigao1 楼6 年前

dongjie
dongjie2 楼5 年前

去掉elemMatch试试,直接匹配正则。