場景:
在命令手動的修改簽到表的整型字段synState,multi參數是可以更新多條,如果是false則更新一條。
db.getCollection("ClassRecordOneDetail").update({synStateTime:{"$gt":new Date("2019-05-12")},synStateTime:{"$lt":new Date("2019-05-13")}},{$set:{synState:0}},{multi:true});
更新之后查詢發現 synState 變為了 0.0 類型變為了 double
解決辦法:
在網上找了一下,發現是要加上類型轉換才行
db.getCollection("ClassRecordOneDetail").update({synStateTime:{"$gt":new Date("2019-05-12")},synStateTime:{"$lt":new Date("2019-05-13")}},{$set:{synState:NumberInt(0)}},{multi:true});