直接使用 $inc 似乎不可以:
{$inc: {"time": 1}}
错误:
Cannot apply $inc modifier to non-number
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
不知道有没有误解王子的需求,你是希望能新增一个 ISODate 类型值的字段吗? 如果是的话,$inc 并不是用来做这个的。$inc 只能用来对数字类型的值进行增减操作,举例如下: 原有数据:
ISODate
$inc
{ "_id" : ObjectId("537eaa530989f15b7f41cedf"), "i" : 1 }
操作如下:
db.test.update({ i : 1 },{ $inc : { i : 2 }})
结果为:
{ "_id" : ObjectId("537eaa530989f15b7f41cedf"), "i" : 3 }
如果是希望新增一个字段,可以使用 $push,同样以上例说明:
$push
db.test.update({ i : 3 },{ $push : {'time' : new ISODate("2014-05-23")}})
{ "_id" : ObjectId("537eaa530989f15b7f41cedf"), "i" : 3, "time" : [ ISODate("2014-05-23T00:00:00Z") ] }
不知道有没有误解王子的需求,你是希望能新增一个
ISODate
类型值的字段吗?如果是的话,
$inc
并不是用来做这个的。$inc
只能用来对数字类型的值进行增减操作,举例如下:原有数据:
操作如下:
结果为:
如果是希望新增一个字段,可以使用
$push
,同样以上例说明:结果为: