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

MongoDB एकत्रीकरण ढांचे का उपयोग करके 2 दशमलव स्थानों तक गोल करना

कोई $roundनहीं है ऑपरेटर लेकिन आप इसे एकत्रीकरण ढांचे में कर सकते हैं - इसे विशिष्ट क्रम में करने से आमतौर पर फ्लोटिंग पॉइंट सटीक मुद्दों से बचना होगा।

> db.a.save({x:1.23456789})
> db.a.save({x:9.87654321})
> db.a.aggregate([{$project:{ _id:0, 
         y:{$divide:[
              {$subtract:[
                      {$multiply:['$x',100]},
                      {$mod:[{$multiply:['$x',100]}, 1]}
              ]},
              100]}
}}])
{ "y" : 1.23 }
{ "y" : 9.87 }

समस्या में मौजूदा पाइपलाइन को देखते हुए, प्रतिस्थापित करें:

{$multiply:[{$divide: ['$ActSls', '$PlnSls']},100]}

के साथ

{$divide:[
     {$subtract:[ 
          {$multiply:[
             {$divide: ['$ActSls','$PlnSls']},
             10000
          ]}, 
          {$mod:[
             {$multiply:[{$divide: ['$ActSls','$PlnSls']}, 10000 ]},
             1]}
          ]}, 
     100
]}

आपके नमूना डेटा बिंदुओं के साथ यह परिणाम है:

{ "ActSls" : 31, "PlnSls" : 51, "ActToPln" : 60.78 }
{ "ActSls" : 41, "PlnSls" : 51, "ActToPln" : 80.39 }
{ "ActSls" : 72, "PlnSls" : 102, "ActToPln" : 70.58 }


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. mongodb.conf bind_ip =127.0.0.1 काम नहीं करता लेकिन 0.0.0.0 काम करता है

  2. नेवला से संग्रह की एक सूची प्राप्त करने की कोशिश कर रहा

  3. नेवला खोज () परिणाम नहीं लौटा रहा है

  4. मोंगोडीबी $नमूना

  5. वसंत डेटा के साथ MongoRepository के साथ क्वेरी एनोटेशन का उपयोग करते समय क्वेरी कैसे दिखाएं?