1、查询db中,数据类型为int、string的数据(需求存储数据时,同一字段可能存成两种格式,需查出某种类型的字段结果集,用$type查询)
db.getCollection('tablename').find({uid:{"$type":16}})用$type,
type | 类型 |
2 | string |
16 | int |
2、查询db中,字符串类型,值为null的(入库操作是,容易把NULL存成“null”,后续查找出来,洗数据)
db.getCollection('tablename').find({atuid:"null"})
还有一种语句:(下面这个是查出表里没有atuid字段的结果集)
db.getCollection('tablename').find({atuid:null})
3、修改数据类型:
db.getCollection('fc_comment').find({uid:{$type:16}}).forEach(function(x) {x.uid = String(x.uid);db.getCollection('fc_comment').save(x); })
Type Number Type Explanation
1 Double 浮点型 2 String UTF-8字符串都可表示为字符串类型的数据 3 Object 对象,嵌套另外的文档 4 Array 值的集合或者列表可以表示成数组 5 Binary data 二进制 7 Object id 对象id是文档的12字节的唯一 ID 系统默认会自动生成 8 Boolean 布尔类型有两个值TRUE和FALSE 9 Date 日期类型存储的是从标准纪元开始的毫秒数。不存储时区 10 Null 用于表示空值或者不存在的字段 11 Regular expression 采用js 的正则表达式语法 13 JavaScript code 可以存放Javasript 代码 14 Symbol 符号 15 JavaScript code with scope 16 32-bit integer 32位整数类型 17 Timestamp 特殊语义的时间戳数据类型 18 64-bit integer 64位整数类型