首页 > 代码库 > mongodb文档支持的数据类型

mongodb文档支持的数据类型

1. 存储类型


mongodb文档类似于json,但不是完全的json。
json只有六种类型:null, bool, 数字,字符串,数组,对象。
但是mongo的文档在json的基础上还扩展了几种类型, 比如,日期类型,整数,浮点数。

mongodb真正存储在磁盘上是使用bson(binary json)。

2. 常用数据类型


null: 表示不存在或空值。
bool : true 和 false。
string: 字符串, 用引号包含。

3. 数字


json中只有数字类型。
而mongodb中有三种:
32位整数
64位整数
64为浮点数
数字默认是按照浮点数存储的。

4. 日期


日期类型存储从标准纪元开始的毫秒数。
{"x" : new Date()}

5. 数组


可以存储数组
{"x" : ["a", "b", "c"]}

6. 内嵌文档


把一个文档作为另一个文档的一个值。
{“x” : {"foo" : "bar"}}

7. _id


mongdb文档必须有个“_id”key,默认是个ObjectId对象。
ObjectId使用12个字节存储空间,每个字节两位16进制数字,是24位字符串。
分配如下图所示

前四个字节为时间戳。由于在前面,使Objectid大概按照时间戳排序。将其作为索引提高效率。
pid为进程标识符,
计数器为每秒的计数器。每秒可以生成(16*16 = 256)的三次方。

_id可以程序来生成,不用系统自动,这就需要保证每个id不能重复。

8. 其他


文档中还可以包含正则表达式, javascript代码,二进制数据。

地址: http://blog.csdn.net/yonggang7/article/details/25510377