2016-08-12 78 views
0

我想指望有多少次特定用戶觀看一些記錄。會有什麼疑問?MongoDB的數量和在那裏

我有收集其記錄用戶活動。用戶每次查看某個行時,都會在該集合中創建一行。所以,我想算一個用戶多少次做一些事情

我想這一點,但不是

User A viewed Company ABC 
User A viewed Company XYZ 

再次合作

db.activities.aggregate(
    {$group: { 
     _id: "$assetName", 
     count: { $sum: 1} 
     }}, 
     {$match: { 
      "userId": "1" 
     }} 
); 

User A viewed Company ABC 
User B viewed company TEST 

預期結果

1. Company A viewed 2 times by user 1 
2. Company B viewed 5 times by user 1 
+0

試試這個:Model.find({ 「公司」: 「A」, 「用戶id」: 「1」})。COUNT(函數(ERR,計數) {}); – chirag

+0

不是一個特定的公司,所有的用戶觀看的公司,我需要它的總和/計數 –

回答

0

試試這個

db.activities.aggregate({$group: {_id: {comp: "$assetName", 
             rec_id: "$recordId", 
             user: "$userId"}, 
           count: {$sum: 1}}}) 
+0

,如果我想在遞減爲了記錄進行排序呢? –

+0

修改了我的答案。檢查一下。 – user10

+0

非常感謝,你讓我的一天。最後一個問題,請 查詢的ASSETNAME實際上是公司的名稱 我已經收集我也想將其包括在隨後的recordId領域的查詢會是什麼? –