按照视图核对文档的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'(即使只有两个那些)。 –