MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Consulta de grupo mangusto em node.js/rota expressa


O group O comando não é suportado pelo Mongoose e também foi preterido no MongoDB 3.4, pois sua funcionalidade é melhor atendida usando aggregate em vez de.

Você pode fazer isso com aggregate usando algo como:
model.Av.aggregate([
    {$match: {dateOfDay: {$gte: new Date('12/01/2014'), $lt:new Date('12/30/2014')}}},
    {$group: {
        _id: '$roomId',
        total: {$sum: '$price'},
        count: {$sum: 1},
        avg: {$avg: '$price'}
    }}
], function (err, result) {...});

Você pode omitir o total e count campos se você não precisar deles como o $avg operador permite calcular o preço médio diretamente.