mongodb group by first character

时间:2013-12-28 16:14:42

标签: mongodb aggregation-framework

我在mongodb中遇到了问题。

我想创建聚合结果将是这样的:

A 10
B 2
C 4
D 9
E 3
...

我的表格中有一个列words,我想根据列words的第一个字符对记录进行分组。

我找到sql的决心,但不是mongo。

我将非常感谢你的帮助

1 个答案:

答案 0 :(得分:8)

您不会显示集合中的文档内容,但您可以使用aggregate集合方法执行此操作:

// Group by the first letter of the 'words' field of each doc in the 'test'
// collection while generating a count of the docs in each group.
db.test.aggregate({$group: {_id: {$substr: ['$words', 0, 1]}, count: {$sum: 1}}})