Итак, предположим, что у меня есть следующие два документа в CouchDB:
{
"_id": "197000000002",
"_rev": "1-fbe819b01108f30d2e9e96f3fb46eff8",
"iyear": "1970",
"region_txt": "North America",
"country": "130",
"region": "1",
"country_txt": "Mexico",
"nkill": "1",
"nwound": "1",
}
{
"_id": "197000000003",
"_rev": "1-fbe819b01108f30d2e9e96f3fb46eff8",
"iyear": "1970",
"region_txt": "North America",
"country": "130",
"region": "2",
"country_txt": "Mexico",
"nkill": "3",
"nwound": "1"
}
Я хочу суммировать все значения nkill и nwound и получить что-то вроде этого:
[1970, "Mexico","North America"] 4, 2
На данный момент я могу СУММИТЬ только одно из двух значений или оба вместе взятых, но это не то, чего я хочу.
Моя функция карты теперь выглядит следующим образом:
function(doc) {
if(doc.nkill >= 1) {
emit([doc.iyear,doc.country_txt,doc.region_txt],parseInt(doc.nkill));
}
}
И я использую _sum для функции сокращения.
Это возвращает мне ключ и значение, подобное этому:
[1970, "Mexico", "North America"] 4