Couchbase中有多个字符串键搜索是否有解决方案?
例如,我有一个索引:
emit(['example', doc.field1, doc.field2], doc.id);
field1 和 field2 是字符串变量。
我无法使用 startkey 和 endkey ,因为复合数组索引键仍被视为字符串。所以我遇到像this这样的问题。但我也有字符串键。所以我不能使用Spatial Views。
除了为密钥的每个部分找到多个结果集,然后找到它们的交集之外,还有其他解决方案吗?
答案 0 :(得分:1)
如果您仅限于使用视图,那么正如您已经发现的那样,无法按独立字段进行过滤。
如果您正在使用(或可以升级到)Couchbase 4.x,那么您可以使用简单的N1QL查询来执行此操作:
SELECT * FROM bucket WHERE field1 = 'bla' AND field2 ='blabla'
确保在两个字段上创建索引:
CREATE INDEX ix_field1 ON bucket(field1)