MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Converti una stringa in un numero nella proiezione MongoDB

Uno dei modi in cui mi viene in mente è utilizzare un javascript della shell mongo per modificare il documento aggiungendo un nuovo campo numerico, valuesasnumber (conversione del numero del campo "valore" della stringa esistente) nel documento esistente o nel nuovo documento. Quindi utilizzare questo campo numerico per ulteriori calcoli.

db.numbertest.find().forEach(function(doc) {
    doc.valueasnumber = new NumberInt(doc.value);
    db.numbertest.save(doc);
});

Utilizzo del campo valueasnumber per il calcolo numerico

db.numbertest.aggregate([{$group : 
   {_id : null, 
    "score" : {$avg : "$valueasnumber"}
   }
}]);