> db.data.update({'name': 'zero'}, {'$set': {'value': 0}})
> db.data.findOne({'name': 'zero})
{'name': 'zero', 'value': 0.0}
如何让Mongo插入一个整数?
谢谢
答案 0 :(得分:268)
db.data.update({'name': 'zero'}, {'$set': {'value': NumberInt(0)}})
您也可以使用NumberLong。
答案 1 :(得分:14)
稍微简单的语法(至少在Robomongo中)对我有用:
db.database.save({ Year : NumberInt(2015) });
答案 2 :(得分:4)
如果值类型已经是double,那么使用$ set命令更新值时,使用NumberInt()或NumberLong()函数时,不能将值类型double更改为int。 因此,要更改值类型,它必须更新整个记录。
var re = db.data.find({"name": "zero"})
re['value']=NumberInt(0)
db.data.update({"name": "zero"}, re)
答案 3 :(得分:-8)
嗯,它是JavaScript,所以'value'中的数字是一个数字,可以是整数或浮点数。但是JavaScript并没有什么区别。来自Learning JavaScript:
数字数据类型
JavaScript中的数字数据类型是浮点数,但它们可能有也可能没有小数部分。如果它们没有小数点或小数分量,则它们被视为整数 - 基数-10整数,范围为-2 53 至2 53 。