假设有如何格式的数据:
[
{
"_id": "a1",
"tags": [
"garden",
"theatre",
"open",
"online"
]
},
{
"_id": "a2",
"tags": [
"share",
"save",
"option"
]
},
{
"_id": "a3",
"tags": [
"new",
"document"
]
}
]
当我输入op时,我希望查询出a1、a2的数据,但我这样写时,查询会出错:
db.collection('xxx').where({ tags: dbCmd.elemMatch(new RegExp('op', 'gim')) }).get()
错误信息如下:
Error: errCode: DATABASE_REQUEST_FAILED | errMsg: [FailedOperation.Query] (BadValue) $elemMatch needs an Object
我该怎样写才能对字符串数组类型的字段做模糊查询呢?
鱼忆科技 (作者)
一言惊醒梦中人,多谢啦
2021-08-31 14:44
Javin
回复 y***@163.com: 这个查询速度如何,是否把tags合并成一个string查询速度更快?
2023-06-06 12:53