mongodb 更新数据时int32变为double的解决办法

   场景:

    在命令手动的修改签到表的整型字段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});

 

posted @ 2019-05-14 18:37  ljcxy  阅读(3147)  评论(0编辑  收藏  举报