Nosql Couchbase startkey作为文本值
我正在使用couchbase保存对象 文档的键如下所示Nosql Couchbase startkey作为文本值,nosql,couchbase,Nosql,Couchbase,我正在使用couchbase保存对象 文档的键如下所示 "xxxx_someRandomValue" 例如,我可以拥有这把钥匙 aaaa_1 aaaa_2 aaab_1 aaab_2 我正在创建一个视图,它应该返回所有文档,其中键以文字“aaaa”开头 但是,如果我指定startKey=“aaaa”,它也会为我找到“aaab”,因为它是用unicode值进行比较的 我可以强制视图只返回以文字“aaaa”开头的文档吗?试试这个 startkey=aaaa&endkey=aaab 找到
"xxxx_someRandomValue"
例如,我可以拥有这把钥匙
aaaa_1
aaaa_2
aaab_1
aaab_2
我正在创建一个视图,它应该返回所有文档,其中键以文字“aaaa”开头
但是,如果我指定startKey=“aaaa”,它也会为我找到“aaab”,因为它是用unicode值进行比较的
我可以强制视图只返回以文字“aaaa”开头的文档吗?试试这个
startkey=aaaa&endkey=aaab
找到解决方案:
要用作前缀,这应该可以
startkey="aaaa"&endkey="aaaa\u02ad"
除了startkey之外,您是否尝试过使用endkey值,例如
&startkey="aaaa"&endkey="aaaa\uefff"
您可以在此处找到有关排序的更多信息:
APIstartKey(最终字符串键)
返回其键(文档名)大于或等于键的unicode值的所有JSON
APIendKey(最终字符串键)
返回其键(文档名)小于KEY的unicode值的所有JSON
因此,在您的情况下,startkey=“aaaa”&endkey=“aaab”(正如avsej所建议的)应该会给您提供所需的结果
因此,常识认为API endKey是关于比较键的结尾,但它是错误的。它找不到任何东西,因为没有键以“aaab”结尾。