使用MongoDB聚合某种数据

时间:2014-12-04 14:04:34

标签: node.js mongodb aggregation-framework

首先,我要求你理解我的英语不好。

我正在使用node.js和mongoDB开发移动应用服务器。 但我一直在处理一些数据结构。 例如,

[{
  type: 'blah',
  createdAt: '2014-12-01'
}, {
  type: 'blah',
  createdAt: '2014-11-30'
}, {
  type: 'alah',
  createdAt: '2014-11-29'
}, {
  type: 'blah',
  createdAt: '2014-11-28'
}, {
  type: 'blah',
  createdAt: '2014-11-27'
}]

数据如上所述。

我想将它们汇总如下

[{
  _id: {
    type: 'blah'
  },
  count: 2
}, {
  _id: {
    type: 'alah'
  },
  count: 1
}, {
  _id: {
    type: 'blah'
  },
  count: 2
}]

当然,如果我加载“createdAt”排序的数据并合并它们,我也会得到与上面显示的相同的结果。

但我想知道是否还有另一种美好的方式。

请告诉我一些神奇的事。

提前致谢。

修改

我觉得有些含糊不清,我添加了一些解释。

两个“类型:顶部的'blah''是连续的,日期'createdAt'。 并且“类型:'alah'”出现,另外两个连续“类型:'blah'”。

所以,如果你用同一个“类型”和连续“createdAt”创建组,

group1:{type:'blah'} X 2,

group2:{type:'alah'} X 1,

group3:{type:'blah'} X 2

更确切地说,我在上面的第二个代码块中写了想要的输出。

我很抱歉因为我不是本地人。

我希望你能理解其他解释。

感谢。

0 个答案:

没有答案