我的沙发数据库上有以下json文档。
{
{
"_id": "someid|goes|here",
"collected": {
"tags": ["abc", "def", "ghi"]
}
},
{
"_id": "someid1|goes|here",
"collected": {
"tags": ["abc", "klm","pqr"]
},
},
{
"_id": "someid2|goes|here",
"collected": {
"tags": ["efg", "hij","klm"]
},
}
}
如何获取collected.tags
包含abc
的记录?到目前为止,我尝试过的是
{
"selector": {
"collected.tags": {
"$regex": "abc"
}
}
}
答案 0 :(得分:0)
如果我已正确理解您正在从3个不同的文档中查询此内容。根据CouchDb文档,使用$elemMatch
运算符可以返回所有文档,其中至少有一个元素根据指定的条件进行了匹配。如果是这样,请使用以下查询过滤出文本“ abc”:
{
"selector": {
"collected.tags": {
"$elemMatch": {
"$regex": "abc"
}
}
}
}
希望这会有所帮助。 :)