1
迄今为止,我在couchdb中创建的所有视图都使用了数字值。向键添加字母字符时,我感到有点意外。CouchDB查看模式匹配在密钥中组合数字和Alpha
我的观点是返回值如预期:
[2011,12,5,14,22,"foo"]
[2011,12,5,14,23,"foo"]
[2011,12,5,14,42,"bar"]
[2011,12,5,15,2,"foo"]
[2011,12,5,15,21,"foo"]
[2011,12,5,15,23,"foo"]
[2011,12,5,16,2,"foo"]
[2011,12,5,16,21,"foo"]
[2011,12,5,16,23,"foo"]
[2011,12,5,16,42,"bar"]
然而,当我查询这些使用的开始键:
[2011,12,5,14,16,"foo"]
和结束键
[2011,12,5,16,60,"foo\ufff0"]
http://couchdb_host:5984/the_db/_design/cf/_view/errors?startkey=[2011,12,5,14,16,%22foo%22]&endkey=[2011,12,5,16,60,%22foo\ufff0%22]&group_level=6
我在结果中不断得到“bar”的值:
{"rows":[
{"key":[2011,12,5,14,22,"foo"],"value":2},
{"key":[2011,12,5,14,23,"foo"],"value":1},
{"key":[2011,12,5,14,42,"bar"],"value":1},
{"key":[2011,12,5,15,2,"foo"],"value":1},
{"key":[2011,12,5,15,21,"foo"],"value":2},
{"key":[2011,12,5,15,23,"foo"],"value":1},
{"key":[2011,12,5,16,2,"foo"],"value":1},
{"key":[2011,12,5,16,21,"foo"],"value":2},
{"key":[2011,12,5,16,23,"foo"],"value":1},
{"key":[2011,12,5,16,42,"bar"],"value":1}
]}
我在哪里掉下来?我期望“bar”被忽略,任何以“foo”开头的东西都会被返回。这一切在纸上似乎都很简单!
线索?
正如罗伯特说,你的查询您的范围是很多更广泛的比你期待。如果你只想在一个范围内搜索foo,你必须首先将它放在['foo',2011,12,5,14,16],然后像startkey = [%22foo%22,2011,12,5 ,14,16] endkey = [%22foo%22,2011,12,5,16,60]。 –