Rumah > Soal Jawab > teks badan
直接使用 $inc 似乎不可以:
{$inc: {"time": 1}}
错误:
Cannot apply $inc modifier to non-number
怪我咯2017-04-24 09:11:55
Saya tidak tahu jika anda telah salah faham dengan keperluan putera raja Adakah anda berharap untuk menambah medan baharu dengan nilai jenis ISODate
?
Jika ya, $inc
tidak dimaksudkan untuk itu. $inc
hanya boleh digunakan untuk menambah atau mengurangkan nilai angka, contohnya:
Data asal:
{ "_id" : ObjectId("537eaa530989f15b7f41cedf"), "i" : 1 }
Operasi adalah seperti berikut:
db.test.update({ i : 1 },{ $inc : { i : 2 }})
Hasilnya ialah:
{ "_id" : ObjectId("537eaa530989f15b7f41cedf"), "i" : 3 }
Jika anda ingin menambah medan baharu, anda boleh menggunakan $push
, seperti yang dijelaskan dalam contoh di atas:
db.test.update({ i : 3 },{ $push : {'time' : new ISODate("2014-05-23")}})
Hasilnya ialah:
{ "_id" : ObjectId("537eaa530989f15b7f41cedf"), "i" : 3, "time" : [ ISODate("2014-05-23T00:00:00Z") ] }