MongoDB常用数据类型分享

目录
  • JSON
  • BSON
    • Object ID
    • String
    • Integer
    • Double
    • Boolean
    • Array
    • Object
    • null
    • Timestamp
    • Date

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

Object ID

文档自动生成的_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数据类型内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 基于MongoDB数据库的数据类型和$type操作符详解

    前面的话 本文将详细介绍MongoDB数据库的数据类型和$type操作符 类型 数字 备注 Double 1 双精度浮点数 - 此类型用于存储浮点值 String 2 字符串 - 这是用于存储数据的最常用的数据类型.MongoDB中的字符串必须为UTF-8 Object 3 对象 - 此数据类型用于嵌入式文档 Array 4 数组 - 此类型用于将数组或列表或多个值存储到一个键中 Binary data 5 二进制数据 - 此数据类型用于存储二进制数据 Undefined 6 已废弃 Objec

  • Mongodb 利用mongoshell进行数据类型转换的实现方法

    $type操作符 检测类型 种类 代号 别名 Double 1 "double" String 2 "string" Object 3 "object" Array 4 "array" Binary data 5 "binData" Undefined 6 "undefined" Deprecated. ObjectId 7 "objectId" Boolean 8

  • Mongodb 数据类型及Mongoose常用CURD

    前言 看完了Node.js实战,其中在数据存储部分提到了Redis.Mongodb,我自己也根据书中的介绍写了几个简单的demo,在demo的过程首先遇到的问题就是数据类型和常见的CURD写法. mongodb的常见操作有两种方式,一个是直接使用API,也就相当于你在SQL Server客户端中使用T-SQL编写SQL语句来操作数据一样,其次就是在程序中使用mongoose驱动来操作数据,相当于我们在程序里用ADO.NET或EF来操作数据,如果你已经写了几个调用API的demo,那么我建议再回过

  • MongoDB 常用的数据类型和基本操作

    NO.1 MongoDB的常用数据类型 MongoDB中的文档类似json,我们知道,在json中,最常用的数据类型有null.bool.数组.字符串.数据.json对象等等.相对比较少,比如对于时间类型的数据,json是无法表示的,而MongoDB中对json进行了简单的优化,像json,但是又不是json.下面我们慢慢说 MongoDB的常用数据类型和MySQL比较像,你可以对比着看.它的常用数据类型有: 1.null 用于表示空值或者不存在的字段 {"x":null} 2.boo

  • mongodb 数据类型(null/字符串/数字/日期/内嵌文档/数组等)

    MongoDB的文档类似于JSON,JSON只是一种简单的表示数据的方式,只包含了6种数据类型(null.布尔.数字.字符串.数组及对象). JSON的数据类型的局限性: 1.无日期类型,对日期型的处理较为繁琐 2.无法区分浮点数和整数.32位和64位 3.其他类型表示局限 如函数.正则式等 Mongodb使用BSON(Binary JSON)来组织数据,BSON还提供日期.32位数字.64位数字等类型.下面为在mongodb shell中这些类型在文档中是如何表示: 1.null  用于表示空

  • Java将日期类型Date时间戳转换为MongoDB的时间类型数据

    存了一个时间类型(Date)的数据到mongo数据库中,但是前台显示的是一串数字.继而引发了如下问题: Java里面如何把 时间戳 1477387464495 转换为 2016-10-25 17:24:24 期望格式的日期字符串. 因为业务需要,在model里面有个Date类型的字段,然后需要按这个时间类型排序.但是在后台处理完之后,返回到前台,发现时间变成了13位数字,学名叫时间戳.不是我想要的具体时间,不适合展示啊.具体有如下 mongo数据库中存储时间类型的数据具体如下: 然后debug的

  • MongoDB支持的java数据类型和测试例子

    mongodb的java数据类型有: Object Ids 自动IDRegular Expressions 正则表达式搜索记录Dates/Times 时间Database References 数据基础结构Binary Data 二进制流Timestamp Data 时间标记戳Code Data 代码数据Embedded Documents 嵌入式文档Arrays 数组类型 详细参考原来英文 http://docs.mongodb.org/ecosystem/drivers/java-types

  • MongoDB常用数据类型分享

    目录 JSON BSON Object ID String Integer Double Boolean Array Object null Timestamp Date JSON     JSON是一种简单的数据表示方式,它易于理解.易于解析.易于记忆.但从另一方面来说,因为只有null.布尔.数字.字符串.数组和对象这几种数据类型,所以JSON有一定局限性.例如,JSON没有日期类型,JSON只有一种数字类型,无法区分浮点数和整数,更别说区分32为和64位数字了.再者,JSON无法表示其他一

  • MongoDB常用命令小结

    MongoDB常用命令: 超级用户相关: use admin #增加或修改用户密码 db.addUser(ixigua,'pwd') #查看用户列表 db.system.users.find() #用户认证 db.auth(ixigua,'pwd') #删除用户 db.removeUser('mongodb') #查看所有用户 show users #查看所有数据库 show dbs #查看所有的collection show collections #查看各collection的状态 db.p

  • spyder常用快捷键(分享)

    最近在学习tensorflow框架,在ubuntu下用到python的一个ide --spyder,以下是常用快捷键 Ctrl+1:注释/撤销注释 Ctrl+4/5:块注释/撤销块注释 Ctrl+L:跳转到行号 F5:运行 F11:全屏 Tab:空行前是代码缩进:在输入一个字母后,按Tab健会自动补全或者代码提示. Shift+Tab:撤销代码缩进 ps:Tools-->Preferences-->Keyboard Shortcut  可以查看所有快捷键 以上这篇spyder常用快捷键(分享)

  • 基于Shell中for循环的几个常用写法分享

    第一类:数字性循环 for1-1.sh #!/bin/bash for((i=1;i<=10;i++)); do echo $(expr $i \* 3 + 1); done for1-2.sh #!/bin/bash for i in $(seq 1 10) do echo $(expr $i \* 3 + 1); done for1-3.sh #!/bin/bash for i in {1..10} do echo $(expr $i \* 3 + 1); done for1-4.sh #!

  • MongoDB常用数据库命令大全

    一.MongoDB 数据库常用操作命令 1.Help查看命令提示 help db.help(); db.yourColl.help(); 2.切换/创建数据库 use raykaeso; 当创建一个集合(table)的时候会自动创建当前数据库 3.查询所有数据库 show dbs; 4.删除当前使用数据库 db.dropDatabase(); 5.从指定主机上克隆数据库 db.cloneDatabase("127.0.0.1"); 将指定机器上的数据库的数据克隆到当前数据库 6.从指定

  • appium+python adb常用命令分享

    前言: 在appium中adb命令的使用必不可少,做android测试嘛,adb命令肯定肯定是每天都要用的啦,所以今天给特地写个博客吧! 这里就不介绍adb是什么以及怎么安装adb了,因为这些东西网上一搜一大把!没必要重写. 对于这些常用的adb命令网上也都有介绍,我这里其实就是简单汇总吧. 一.检查设备 前提:安卓设备开启开发者模式,开启usb调试 1.如何检查手机(或模拟器)是连上电脑的,在cmd输入: 二.安装app 第一步:先下载apk文件包到电脑 第二步:cmd端口输入adb inst

  • pytorch常用数据类型所占字节数对照表一览

    PyTorch上的常用数据类型如下 Data type dtype CPU tensor GPU tensor Size/bytes 32-bit floating torch.float32 or torch.float torch.FloatTensor torch.cuda.FloatTensor 4 64-bit floating torch.float64 or torch.double torch.DoubleTensor torch.cuda.DoubleTensor 8 16-b

  • MongoDB 常用的crud操作语句

    目录 创建数据(CREATE) 更新数据(Update) 删除(DELETE) 读取数据(READ) 对于后端大神(小白)来说,每天的工作就是 CRUD,再加上 Control + C 和 Control + V.作为大神(小白),怎么能不懂 CRUD 呢?MongoDB 的 CRUD 相比繁琐的 SQL 语句而言十分简便,显得更为现代化. 创建数据(CREATE) MongoDB 提供了两种方式创建数据: db.crud.insert({name: '码农', gender: '男'}); d

  • Java中常用数据类型的输入输出详解

    目录 1.Char型 1.1  输入格式: 1.2  举例说明 2.int型 1.1  简单的int格式输入: 1.2  举例说明 2.1带空格的int格式输入 : 2.2  举例说明 3.1  复杂int格式的输入 3.2  举例说明 3.double型 4.多次输入 1.1  输入格式 1.2  举例说明 5.数组 1.1  数组输入格式: 2.1  数组转换成字符串 6.字符串 1.1  字符串转换成整型,浮点型(以整型为例) 1.2  整型,浮点型转换成字符串 2.1  字符串转换成字符

随机推荐