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