2
我正在减少日期范围的用户笔记的计数和我在很不解决问题的前面。日期范围选择是好的 - 我创建数组键[YYYY,MM,DD,user_id]。couchdb中的关键排序和映射减少
文件例如:
{
"_id": "1",
"_rev": "1-84d3fa5f259c7b30c74028ca60a45f91",
"body": "note text",
"user_id": 666,
"created_at": "Thu Apr 26 13:50:20 +0200 2010",
}
地图功能:
function(doc){
var created = new Date(doc.created_at);
emit([created.getFullYear(),created.getMonth()+1,created.getDate(),doc.user_id],doc);
}
Reduce函数:
_count
在此之前确定 - 当我想为所选的日期范围内的所有笔记,例如从2010-02-02到2010-03-03:
reduce_view_name?startkey=[2010,02,01]&endkey=[2010,02,28,{}]&group_level=0
这很容易选择总计笔记/用户/日 - 我将group_level更改为4. 但是,我想为所选日期范围的笔记计数,每个用户有一个笔记总和?在这种情况下,我得到每个用户28行,但如果你有300个用户呢?这将是300x28 = 7400行(如果每个人都会写日常:)。
第二个选项是将user_id从最后一位替换为第一位,但在这种情况下,我需要知道id_user并单独为每个人进行选择。
有谁知道如何解决呢:)
嗨,我做了2周前,因为我在我的问题结束时写道: 第二个选项是将user_id从最后一位替换为第一位,但在这种情况下,我需要知道id_user并为每个人单独选择。 这不是我认为的另一个原因: - / – podolinek 2010-05-29 11:39:34