MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

MongoDB स्ट्रिंग प्रकार को फ्लोट प्रकार में बदलें

समस्या यह है कि toFixed एक String देता है , नहीं एक Number . फिर आप दस्तावेज़ को एक नए, और अलग String . के साथ अपडेट कर रहे हैं ।

मोंगो शैल से उदाहरण:

> number = 2.3431
2.3431
> number.toFixed(2)
2.34
> typeof number.toFixed(2)
string

यदि आप 2 दशमलव संख्या चाहते हैं तो आपको इसे फिर से कुछ इस तरह से पार्स करना होगा:

db.MyCollection.find({"ProjectID" : 44, "Cost": {$exists: true}}).forEach(function(doc){
  if(doc.Cost.length > 0){
    var newCost = doc.Cost.replace(/,/g, '').replace(/\$/g, '');
    var costString = parseFloat(newCost).toFixed(2);
    doc.Cost = parseFloat(costString);
    db.MyCollection.save(doc);
  } // End of If Condition
}) // End of foreach


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Pymongo का उपयोग करके MongoDB में एकल फ़ील्ड का चयन कैसे करें?

  2. लिनक्स/ओएस एक्स पर मोंगोड सेवा शुरू करने का सही तरीका क्या है?

  3. MongoDB में शर्त के साथ नेस्टेड दस्तावेज़ निकालें

  4. कैसे एकत्रीकरण ढांचे का उपयोग कर अन्य क्षेत्रों को शामिल किए बिना _id को बाहर करने के लिए

  5. मोंगो समूह और धक्का:सभी क्षेत्रों को धक्का देना