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