आप key . पर घुंघराले ब्रेसिज़ भूल गए हैं मान और आपको उस पंक्ति को , . के साथ समाप्त करने की आवश्यकता है ; . के बजाय ।
db.issues.group({
key: {"comments.username":true},
initial: {sum:0},
reduce: function(doc, prev) {prev.sum +=1},
});
अपडेट करें
comments को समझने के बाद एक सरणी है...आपको aggregate का उपयोग करना होगा उसके लिए ताकि आप comments ' को 'अनविंड' कर सकें और फिर उस पर समूह बनाएं:
db.issues.aggregate(
{$unwind: '$comments'},
{$group: {_id: '$comments.username', sum: {$sum: 1}}}
);
प्रश्न में नमूना दस्तावेज़ के लिए, यह आउटपुट करता है:
{
"result": [
{
"_id": "Brandon Black",
"sum": 1
},
{
"_id": "Nelson Elhage",
"sum": 3
}
],
"ok": 1
}