2
respostas

Aggregate + group + range

Bom dia. Tudo bem ?

Preciso de uma ajuda de voces. Nao estou conseguindo fazer um group e que contenha um range de tempo tambem. Vou tentar me explicar.

Dado essa collection de exemplo..

// collection: 
{
    "_id" : ObjectId("11111111111"),
    "cc" : "DEV",
    "updated_at" : ISODate("2017-10-03T11:19:53.000-03:00")
},
{
    "_id" : ObjectId("11111111112"),
    "cc" : "DEV",
    "updated_at" : ISODate("2017-10-03T11:19:51.000-03:00")
},
{
    "_id" : ObjectId("11111111113"),
    "cc" : "DEV",
    "updated_at" : ISODate("2017-10-03T11:19:50.000-03:00")
},
{
    "_id" : ObjectId("11111111114"),
    "cc" : "DEV",
    "updated_at" : ISODate("2017-10-03T11:19:50.000-03:00")
}

como eu faco para me retonar nesse formato agrupado por minuto ?

{
    minute: 1,
    count: 2
},
{
    minute: 2,
    count: 1
}
{
    minute: 3,
    count: 5
}
{
    minute: 4,
    count: 1
}
{
    minute: 5...

ate o minuto 30 ?! eu tentei com aggregate mas nao estou conseguindo fazer esse range de 30 minutos e agrupar os minutos para ter a contagem deles poderiam me ajudar ?

2 respostas

Fala ai Renato, tudo bem ?

Sua dúvida ficou aberta por praticamente uma semana e a galera não conseguiu te ajudar :(

O importante nesse instante é não desanimar, ainda assim tô dando uma estudada para ver se posso te ajudar com isso.

Tudo bem Matheus

Muito obrigado pela atencao ^^