> db.data.update({'name': 'zero'}, {'$set': {'value': 0}})
> db.data.findOne({'name': 'zero})
{'name': 'zero', 'value': 0.0}
मैं पूर्णांक सम्मिलित करने के लिए मोंगो कैसे प्राप्त करूं?
धन्यवाद
> db.data.update({'name': 'zero'}, {'$set': {'value': 0}})
> db.data.findOne({'name': 'zero})
{'name': 'zero', 'value': 0.0}
मैं पूर्णांक सम्मिलित करने के लिए मोंगो कैसे प्राप्त करूं?
धन्यवाद
जवाबों:
db.data.update({'name': 'zero'}, {'$set': {'value': NumberInt(0)}})
आप NumberLong का भी उपयोग कर सकते हैं।
थोड़ा सा सिंटैक्स (रोबोमोंगो में कम से कम) मेरे लिए काम किया:
db.database.save({ Year : NumberInt(2015) });
यदि मान प्रकार पहले से ही डबल है, तो $ सेट कमांड के साथ मूल्य को अपडेट करें नंबरआईंट () या नंबरलॉन्ग () फ़ंक्शन का उपयोग करते समय मूल्य प्रकार को इंट में डबल नहीं बदल सकते। तो, मान प्रकार बदलने के लिए, इसे पूरे रिकॉर्ड को अपडेट करना होगा।
var re = db.data.find({"name": "zero"})
re['value']=NumberInt(0)
db.data.update({"name": "zero"}, re)
$set
कम से कम मोंगो 4.2 में काम किया, इसलिए शायद यह एक बग था।
खैर, यह जावास्क्रिप्ट है, इसलिए आपके पास 'मूल्य' में एक संख्या है, जो पूर्णांक या फ्लोट हो सकती है। लेकिन वास्तव में जावास्क्रिप्ट में कोई अंतर नहीं है। से सीखना जावास्क्रिप्ट :
नंबर डेटा प्रकार
जावास्क्रिप्ट में संख्या डेटा प्रकार फ़्लोटिंग पॉइंट नंबर हैं, लेकिन उनके पास एक आंशिक घटक हो सकता है या नहीं हो सकता है। यदि उनके पास दशमलव बिंदु या अंश घटक नहीं है, तो उन्हें पूर्णांक के रूप में माना जाता है — आधार -10 पूरी संख्या -२ 53 से 2 53 की सीमा में ।