Couchbase:通过多个字符串键进行搜索

时间:2016-08-10 08:30:05

标签: string search couchbase composite-primary-key

Couchbase中有多个字符串键搜索是否有解决方案?

例如,我有一个索引:

emit(['example', doc.field1, doc.field2], doc.id);

field1 field2 是字符串变量。

我无法使用 startkey endkey ,因为复合数组索引键仍被视为字符串。所以我遇到像this这样的问题。但我也有字符串键。所以我不能使用Spatial Views

除了为密钥的每个部分找到多个结果集,然后找到它们的交集之外,还有其他解决方案吗?

1 个答案:

答案 0 :(得分:1)

如果您仅限于使用视图,那么正如您已经发现的那样,无法按独立字段进行过滤。

如果您正在使用(或可以升级到)Couchbase 4.x,那么您可以使用简单的N1QL查询来执行此操作:

SELECT * FROM bucket WHERE field1 = 'bla' AND field2 ='blabla'

确保在两个字段上创建索引:

CREATE INDEX ix_field1 ON bucket(field1)