按照視圖覈對文檔的CouchDB( http://wiki.apache.org/couchdb/View_collation),成員爲了物質確實爲覈對。我想知道是否有辦法去禁用這個屬性,這樣整理順序無所謂?我希望能夠「搜索」我的視圖,以便發出的文檔能夠滿足該字段的所有關鍵字範圍。平等的優先級視圖排序規則CouchDB?
這裏更多的是對觀點整理了一些,供大家參考:CouchDB sorting and filtering in the same view
同樣,如果它是可以設置的CouchDB這樣才能不爲觀點整理無所謂,用於以下參數GET請求應該只發出文檔,其中doc.phone_number ==「ZZZZZZZ」,而現在它發出落在前3個鍵範圍內的文檔,並完全忽略最後一個鍵。發生這種情況是因爲最後一個鍵在當前整理方案中的優先級最低。
startkey:[NULL,NULL,NULL, 「ZZZZZZZ」],
endkey:[ 「\ ufff0」, 「\ ufff0」, 「\ ufff0」, 「ZZZZZZZZ」],
示例映射功能
var map = function(doc) { /* //Keys emitted 1. name 2. address 3. age 3. phone_number */ emit([doc.name,doc.address,doc.num_age,doc.phone_number],doc._id) }
這是可能的,還是我要創建執行此多個視圖?多個視圖的使用似乎非常不合適。
我讀過CouchDB-Lucene :(How to realize complex search filters in couchdb? Should I avoid temporary views?)對複雜搜索有幫助,但在這種情況下似乎不適用。
除了使用CouchDB Lucene,對於多字段查詢,即「WHERE field = value AND field2 = value2」,我是否可以將單個視圖的輸出傳遞給另一個視圖進行處理,以便多字段查詢由多個視圖串行計算? – AnthonyS
您可以在客戶端或在返回數據之前(使用[list function](http://guide.couchdb.org/draft/transforming.html))執行額外的過濾。但是,只有初始查詢才能從索引中受益,所以如果有一百萬個帶有「field = value」的文檔,數據庫將不得不全部讀取它們以提取那些'field2 = value2'(即使只有兩個那些)。 –