假设我们在couchdb中有一些文档,就像这样
{ page: 'home', country: 'EN', timestamp: 15448 }
{ page: 'search', country: 'FR', timestamp: 15448 }
{ page: 'search', country: 'EN', timestamp: 15448 }
{ page: 'home', country: 'DE', timestamp: 15457 }
每个文档表示来自具有给定时间戳的国家/地区的综合浏览量.我想要做的是查询这些文档,对于给定的页面和时间戳范围,获取该范围的每个国家/地区的综合浏览量.
我想出的是这个地图功能
function (doc) {
emit([doc.page, doc.timestamp, doc.country], 1)
}
和_sum作为reduce函数.
我可以用例如查询视图. startkey = [“home”,15448]& endkey = [“home”,15448,{}]但这会返回每个国家/地区的综合浏览量,这比我需要的信息更多. (只是给定时期内每个国家/地区的综合浏览量).
最佳答案 只是敦促发射国家
function (doc)
{
emit([doc.page, doc.timestamp], 1)
}
减少功能
function (keys, value)
{
return sum(value);
}