我想计算特定用户查看某些记录的次数。对它的查询是什么?
我有记录用户活动的集合。每次用户查看某个内容时,该集合中都会创建一行。所以我想计算用户做某事的次数
我正在尝试这个但不能正常工作
db.activities.aggregate(
{$group: {
_id: "$assetName",
count: { $sum: 1}
}},
{$match: {
"userId": "1"
}}
);
示例
User A viewed Company ABC
User A viewed Company XYZ
再次
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 :(得分:0)
试试这个
db.activities.aggregate({$group: {_id: {comp: "$assetName",
rec_id: "$recordId",
user: "$userId"},
count: {$sum: 1}}})