2016-03-03 30 views
0

下面是一些例子的ID:濫用pouchDB的doc ID:獲得第一前綴元素

someText_1 
someText_2 
someText_3 
someOtherText_1 
someOtherText_2 

我想獲得與下劃線後的最高數值的「SomeText」則會 - 元素:someText_3

allDocs({startkey: 'someText_', endkey: 'someText_\uffff'}); 

會導致所有「someText _」 - 元素。 有沒有辦法只接收「someText_3」?我想避免map/reduce查詢,因​​爲保證的本地存儲空間非常有限。

我已經閱讀:

http://pouchdb.com/2014/05/01/secondary-indexes-have-landed-in-pouchdb.html(當不使用的map/reduce)

Pouchdb document id complex key(具有同樣的問題)

回答

1

可惜你不能搜索 「裏面」 的字符串與P/CouchDB _ids - 你只能做前綴搜索。當然,前綴搜索並不能解決你的整數問題,因爲在字符串方面,1 < 10 < 2

一種選擇是直接使用pouchdb-collate。因此,例如,您的ID可以從[2, 'someText']之類的對象中生成。這使您可以輕鬆搜索高於和低於某個值的整數,但缺點是難以搜索'someText'

另一種選擇是隻硬着頭皮使用的map/reduce或pouchdb找到的。如果您的查詢需求足夠複雜,則可能需要。

+0

謝謝。不幸的是,當你陳述它時,pouchdb整理嘗試會顛倒我的情況下的問題。非常感謝您的時間。 – VapoRizer