ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MongoDB-数据类型

2019-07-18 09:01:46  阅读:237  来源: 互联网

标签:name ObjectId Python MongoDB 数据类型 id


了解数据类型

MySQL和MongoDB对比

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类型,时间戳可以秒杀一切时间类型)

数据类型剖析

1.Object ID :

复制代码
"_id" : ObjectId("5b151f8536409809ab2e6b26")

#"5b151f85" 代指的是时间戳,这条数据的产生时间
#"364098" 代指某台机器的机器码,存储这条数据时的机器编号
#"09ab" 代指进程ID,多进程存储数据的时候,非常有用的
#"2e6b26" 代指计数器,这里要注意的是,计数器的数字可能会出现重复,不是唯一的
#以上四种标识符拼凑成世界上唯一的ObjectID
#只要是支持MongoDB的语言,都会有一个或多个方法,对ObjectID进行转换
#可以得到以上四种信息

#注意:这个类型是不可以被JSON序列化的
复制代码

这是MongoDB生成的类似关系型DB表主键的唯一key,具体由24个字节组成:

0-8字节是时间戳,

9-14字节的机器标识符,表示MongoDB实例所在机器的不同;

15-18字节的进程id,表示相同机器的不同MongoDB进程。

19-24字节是计数器

2.String :

UTF-8字符串,记住是UTF-8字符串

3.Boolean :

true or false 这里首字母是小写的

4.Integer :

整数 (Int32 Int64 你们就知道有个Int就行了,一般我们用Int32)

5.Double :

浮点数 (MongoDB中没有float类型,所有小数都是Double)

6.Arrays :

复制代码
{
    "_id" : ObjectId("5b163830993ddc4cd4918ead"),
    "name" : "LuffyCity",
    "teacher" : [
        "DragonFire",
        "WuSir2B",
        "Alex AGod"
    ]
}
复制代码

数组或者列表,多个值存储到一个键 (list哦,大Python中的List哦

7.Object :

复制代码
{
    "_id" : ObjectId("5b163915993ddc4cd4918eaf"),
    "name" : "LuffyCity",
    "course" : {
        "name" : "Python",
        "price" : 19800
    }
}
复制代码

如果你学过Python的话,那么这个概念特别好理解,就是Python中的字典,这个数据类型就是字典

8.Null :

{
    "_id" : ObjectId("5b163a0e993ddc4cd4918eb0"),
    "name" : "LuffyCity",
    "course" : null
}

空数据类型 , 一个特殊的概念,None Null

9.Timestamp :时间戳

{
    "_id" : ObjectId("5b163bbf993ddc4cd4918eb3"),
    "name" : "LuffyCity",
    "date" : 1528183743111
}

10.Date :

 

{
    "_id" : ObjectId("5b163ba1993ddc4cd4918eb2"),
    "name" : "LuffyCity",
    "date" : ISODate("2018-06-05T15:28:33.705+08:00")
}

 存储当前日期或时间格式 (我们一般很少使用这个Date类型,因为时间戳可以秒杀一切时间类型)

标签:name,ObjectId,Python,MongoDB,数据类型,id
来源: https://www.cnblogs.com/songzhixue/p/11203036.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有