JSON
JSON是一种简单的数据表示方式,它易于理解、易于解析、易于记忆。但从另一方面来说,因为只有null、布尔、数字、字符串、数组和对象这几种数据类型,所以JSON有一定局限性。例如,JSON没有日期类型,JSON只有一种数字类型,无法区分浮点数和整数,更别说区分32为和64位数字了。再者,JSON无法表示其他一些通用类型,如正则表达式或函数。
BSON
BSON(Binary Serialized Document Format)是一种类JSON的二进制形式的存储格式,简称Binary JSON。它和JSON一样,支持内嵌的文档对象和数组对象,但是BSON有JSON没有的一些数据类型,如Date和BinData类型。它支持下面数据类型。每个数据类型对应一个数字,在MongoDB中可以使用$type操作符查看相应的文档的BSON类型。
MongoDB 4.2官方支持数据类型如下:
最经常使用的数据类型:
- Object ID :Documents 自生成的 id
- String: 字符串,必须是utf-8
- Boolean:布尔值,true 或者false (这里有坑哦~在我们大Python中 True False 首字母大写)
- Integer:整数 (Int32 Int64 你们就知道有个Int就行了,一般我们用Int32)
- Double:浮点数 (没有float类型,所有小数都是Double)
- Arrays:数组或者列表,多个值存储到一个键 (list哦,大Python中的List哦)
- Object:如果你学过Python的话,那么这个概念特别好理解,就是Python中的字典,这个数据类型就是字典
- Null:空数据类型 , 一个特殊的概念,None Null
- Timestamp:时间戳
- Date:存储当前日期或时间unix时间格式 (我们一般不用这个Date类型,时间戳可以秒杀一切时间类型)*
ObjectID
文档自动生成的_id,长度为24个字符。
0-8字节是时间戳,
9-14字节的机器标识符,表示MongoDB实例所在机器的不同;
15-18字节的进程id,表示相同机器的不同MongoDB进程。
19-24字节是计数器
String
UTF-8字符串,记住是UTF-8字符串。
Integer
整数 (Int32 Int64 我们就知道有个Int就行了,一般我们用Int32)
Double
浮点数 (MongoDB中没有float类型,所有小数都是Double)
Boolean
true或者false,首字母为小写
Array
数据或者列表,多个值存储到一个键
Object
类似于Python里的字典,key是唯一的
null
空值
Timestamp
时间戳
Date
默认时间为标准时间(UTC)
需要转换为当前时间。
很少使用这个Date类型,因为时间戳可以秒杀一切时间类型。
到此这篇关于MongoDB常用数据类型分享的文章就介绍到这了,更多相关MongoDB数据类型内容请搜索萤火虫技术以前的文章或继续浏览下面的相关文章希望大家以后多多支持萤火虫技术!
发表评论 取消回复