У меня есть представление, которое считает отчеты для каждого города
function (doc) {
if (doc.type == "report")
{
emit(doc.city_name, null);
}
}
И я уменьшаю его с помощью _count
, что дает следующие значения:
{'key': 'South Tampa', 'value': 2}
{'key': 'Sebring', 'value': 19}
{'key': 'Satsuma', 'value': 3}
{'key': 'Palm Desert', 'value': 1}
{'key': 'Indio', 'value': 1}
На данный момент я делаю запрос с несколькими ключами к этому представлению (например, ["Indio", "Satsuma"]
) и суммирую их в python.
Можно ли суммировать их напрямую с CouchDB?
Функция списка Couchdb может помочь вам достичь того, чего вы хотите.
http://docs.couchdb.org/en/2.1.2/ddocs/ddocs.html#list-функции
Чтобы получить лучшее представление о том, как его использовать, эта статья может быть полезна. http://guide.couchdb.org/draft/transforming.html
Функция списка, которая их суммирует:
function(head, req){
i = 0;
while(row = getRow()){ i += row.value; }
send('{ \"total_count\":' + i +'}');
}
Спасибо за информацию, а можно ссылку со ссылкой?
К вашему сведению: функции списков предлагается отменить в следующем основном выпуске.