首页 > 解决方案 > 如何在 mongo DB 中将新列作为整数类型添加到所有文档中?

问题描述

我试图在我的一个集合上的所有文档中添加两个整数类型列,所以我使用了 $addFields,我的查询如下:

db.test.aggregate([
 {
       $addFields:
       {
          "NumberOne": 0,
          "NumberTwo": 0,
       }
    }
 ]
 )

运行查询后,两个新列被添加为双精度类型,0.0 而不是 int32 类型 0。我尝试使用 updatemany 来更新具有以下 db.test.updateMany({}, {$set:{" NumberOne": 0}}) 仍然没有帮助。如何在 mongodb 中添加两个新的整数列?谢谢!

标签: mongodbmongodb-query

解决方案


感谢上述链接的提示。所以这里的技巧是使用 NumberInt(0) 而不是 0 。所以当查询应该是:

db.test.aggregate([
 {
       $addFields:
       {
          "NumberOne": NumberInt(0),
          "NumberTwo": NumberInt(0),
       }
    }
 ]
 )

推荐阅读