2017-06-26 43 views
1

我是初学者couchDB。 我有数据如下:mapreduce在couchDB中获得MAX结果后mapreduce

one:[{ 
    "name":abc, 
    "value":1 
}, 
{  
    "name":efg, 
    "value":1 
}, 
{  
    "name":abc, 
    "value":1 
}, 

我想获得类似钥匙的数量和获得最大的。 例如在我的情况下,“abc”是两次。所以最大(降低功能)应该返回 结果:{"name":abc,value:2}

回答

0

你尝试这种设计文件:

{ 
    "_id":"_design/company", 
    "views": 
    { 
    "abc_customers": { 
     "map": "function(doc) { if (doc.name == 'abc') emit(doc.name,doc.value) }", 
     "reduce" : "_count" 
    }, 
    "efg_customers": { 
     "map": "function(doc) { if (doc.name == 'efg') emit(doc.name,doc.value) }", 
     "reduce" : "_count" 
    } 
    } 
} 

_count_sum比较,请参阅this one。可能你需要_count

通过上面的CouchDB设计文档,您将得到每个doc.nameabc,efg,...然后您可以搜索计数的最大值/最小值。