使用 CouchDB 可以进行“类似”SQL 的查询。http://guide.couchdb.org/draft/cookbook.html说
您将如何在 SQL 中执行此操作:
SELECT field FROM table WHERE value="searchterm"
如何在 CouchDB 中做到这一点:
用例:获取与键(“搜索词”)关联的结果(可以是记录或记录集)。
为了快速查找某些内容,无论存储机制如何,都需要索引。索引是一种为快速搜索和检索而优化的数据结构。CouchDB 的映射结果存储在这样一个索引中,恰好是一棵 B+ 树。
要通过“searchterm”查找值,我们需要将所有值放入视图的键中。我们只需要一个简单的地图函数:
function(doc) {
if(doc.value) {
emit(doc.value, null);
}
}
这将创建一个文档列表,其中包含一个按值字段中的数据排序的值字段。要查找与“searchterm”匹配的所有记录,我们查询视图并将搜索词指定为查询参数:
/database/_design/application/_view/viewname?key="searchterm"
如何使用 PouchDB 做到这一点?API 提供了创建临时视图的方法,但是如何使用 key="searchterm" 个性化获取请求?