我的数据库中充满了记录:
{date: ISODate("2018-01-01T00:00Z"), data: 'A'}
{date: ISODate("2018-01-01T02:00Z"), data: 'B'}
{date: ISODate("2018-01-01T10:00Z"), data: 'C'}
{date: ISODate("2018-01-01T16:00Z"), data: 'D'}
{date: ISODate("2018-01-01T18:00Z"), data: 'E'}
{date: ISODate("2018-01-01T20:00Z"), data: 'F'}
{date: ISODate("2018-01-01T22:00Z"), data: 'G'}
当它们之间的时间差小于N时,我想将记录分组在一起。
例如,当N = 3小时时,第一个容器应包含A,B,第二个容器应包含C,最后一个容器应包含D,E,F,G。
MongoDB的聚合或mapReduce是否可能?
答案 0 :(得分:0)
您不能使用mongodb聚合来做到这一点,因为您当前无法访问2个文档的值。更接近的解决方案是使用$ bucket框架阶段。