我無法理解MongoDB的聚合框架。基本上我的JSON是這樣的:Mongo聚合和n個字段計數
[
{
"id": 1,
"param1": true,
"param2": false,
"param3": false
},
{
"id": 2,
"param1": true,
"param2": false,
"param3": true
},
{
"id": 3,
"param1": false,
"param2": true,
"param3": false
}
]
我想看看有多少文件有,例如,參數1 ==真,參數2 ==真等。 在這種情況下,預期的結果應該是:
count_param1: 2
count_param2: 1
count_param3: 1
這裏的竅門是PARAM可以是參數1 .. paramN,所以基本上我要麼需要做一個獨特的和確切指定哪些字段IM感興趣的還是可以的我以「參數」開頭的所有字段上的「組」。
推薦的方法是什麼?
進一步解釋:
的SQL相當於是做:
SELECT COUNT(param1) AS param1
FROM [Table]
GROUP BY param1
對於每一列(但在一個查詢)。
試過了。一個沒有索引的param_count在300000個文檔中花費了0.2秒。太慢了。 – Norrin 2014-10-17 18:56:42