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]。 –