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

Converter uma string em um número na projeção do MongoDB


Uma das maneiras que posso pensar é usar um javascript de shell mongo para modificar o documento adicionando um novo campo numérico, valuesasnumber (conversão numérica do campo 'valor' da string existente) no documento existente ou no novo documento. Em seguida, use este campo numérico para cálculos adicionais.
db.numbertest.find().forEach(function(doc) {
    doc.valueasnumber = new NumberInt(doc.value);
    db.numbertest.save(doc);
});

Usando o campo valueasnumber para cálculo numérico
db.numbertest.aggregate([{$group : 
   {_id : null, 
    "score" : {$avg : "$valueasnumber"}
   }
}]);