Couchdb 映射/减少-如何获取给定标记的发生次数?

Couchdb 映射/减少-如何获取给定标记的发生次数?,couchdb,Couchdb,我有一个带有tags属性的posts文档,它存储为一个简单数组。我正试图编写一个视图,返回所有标记,以及它们出现的次数,按大多数出现次数排序 下面返回列表,但未排序。基本上,我需要以某种方式将reduce结果放入键中?如果我做了一些愚蠢的事情,请纠正我,并让我知道是否应该用中间件对其进行排序 // map function(doc) { if (doc.tags) { doc.tags.forEach(function(tag) { emit(tag, 1);

我有一个带有tags属性的posts文档,它存储为一个简单数组。我正试图编写一个视图,返回所有标记,以及它们出现的次数,按大多数出现次数排序

下面返回列表,但未排序。基本上,我需要以某种方式将reduce结果放入键中?如果我做了一些愚蠢的事情,请纠正我,并让我知道是否应该用中间件对其进行排序

// map
function(doc) {
  if (doc.tags) {
    doc.tags.forEach(function(tag) {
      emit(tag, 1);    
    });
  }
}

// reduce
function(keys, values, rereduce) {
  return sum(values);
}

看来单靠沙发是不可能的


如果您只有几千个标记,则可以通过列表功能轻松实现排序。

您是正确的。coach目前无法执行您描述的操作。不过,在中间层排序应该不会太难。