MongoDB数据类型

JSON和BSON

JSON是一种简单的数据表示方式,它易于理解、易于解析、易于记忆。但从另一方面来说,因为只有null、布尔、数字、字符串、数组和对象这几种数据类型,所以JSON有一定局限性。例如,JSON没有日期类型,JSON只有一种数字类型,无法区分浮点数和整数,更别说区分32为和64位数字了。再者,JSON无法表示其他一些通用类型,如正则表达式或函数。

BSON(Binary Serialized Document Format)是一种类JSON的二进制形式的存储格式,简称Binary JSON。它和JSON一样,支持内嵌的文档对象和数组对象,但是BSON有JSON没有的一些数据类型,如Date和BinData类型。它支持下面数据类型。每个数据类型对应一个数字,在MongoDB中可以使用$type操作符查看相应的文档的BSON类型

Mongodb数据类型

数据类型
示例
说明
Double {“key”:“8.21”} 存储64位整数,shell客户端显示的数字都是这种类型
String {“key”:“value”} 字符串,UTF-8格式
Object 对象
Array {“key”:[1,2,3]} 数组,集合或者列表
Binary data 二进制数据,主要存储文件
ObjectId {“key”:ObjectId()} 12字节的唯一ID
Boolean {“key”:“true”} 布尔类型表示真或者假
Date {“key”:new Date()} 日期格式
Null {“key”:null} null表示空值或者不存在该字段
Regular Expression 正则表达式
32-bit integer {“key”:8} int,32位整数
64-bit integer {“key”:8} long,64位整数
Decimal128 {“price”:NumberDecimal(“2.099”)} 3.4版本新增的数据类型,对应java的类型为BigDecimal

官网介绍:https://docs.mongodb.com/manual/reference/bson-types/

你可能感兴趣的:(MongoDB)