mongodb数据类型
随着web2.0的时代到来,关系型数据库在越来越多的场景下暴漏出许多问题,为了解决这类问题,NoSql数据库应用而生,今天就来说说当下比较主流的NoSql数据库mongodb。
1. 基本数据类型 mongodb类似于json,在概念上javaScript类似。json是数据的一种简单表示方法,包含6种数据类型,分别是:null, 布尔,数字,字符串,数组和对象。没有时间数据类型,在操作时间上就会很麻烦。而mongodb在保留json基本的键值对的特性基础上,添加了其它的数据类型。
| 数据类型 | 文档的表示方式 | 说 明 |
| null | {"x":null} | null表示空值或者不存在的字符串 |
| 布尔 | {“x”:true} | 布尔有两个值true或false |
| 32位整数 | 在Shell中这个类型是不可用的,因为javaScript只支持64位浮点数,所有32位整数会自动转换。 | |
| 64位整数 | 在Shell中也不支持这个类型,Shell会使用一个特殊的内嵌文档来显示64位整数 | |
| 64位浮点数 | {"x":12.6} {"y":12} | shell中的数字都是这种类型 |
| 字符串 | {"x":"personaliinfo"} | UTF-8字符串都可以表示为字符串类型的数据 |
| 符号 | Shell不支持这种类型。Shell将数据库中的符号类型转换为字符串 | |
| 对象Id | {"x":objectId()} | 对象id是文档的12字节的唯一ID |
| 日期 | {"x":newDate()} | 日期类型存储的是从标准纪元开始的毫秒数,不存储时区 |
| 正则表达式 | {"x":/personaliinfo/i} | 文档中可以包含正则表达式,采用正则表达式的语法 |
| 代码 | {"x":function(){...}} | 文档中可以包含JavaScript代码 |
| 二进制数据 | 二进制数据可以由任意字节的串组成,在Shell中无法使用 | |
| 最大值 | BSON包含一个特殊类型,表示可能的最大值,Shell中没有 | |
| 最小值 | BSON包含一个特殊类型,表示可能的最小值,Shell中没有 | |
| 未定义 | {"x":undefined} | 文档中可以使用未定义类型(javascript中null和undefined是不同的类型) |
| 数组 | {"x"["a","b","c"]} | 值得集合或者列表可以表示成数组 |
| 内嵌文档 | {"x":{"name":"h"}} | 文档中可以嵌入其它文档 |
mongodb数据类型的更多相关文章
- Mongodb 数据类型及Mongoose常用CURD
前言 看完了Node.js实战,其中在数据存储部分提到了Redis.Mongodb,我自己也根据书中的介绍写了几个简单的demo,在demo的过程首先遇到的问题就是数据类型和常见的CURD写法. mo ...
- MongoDB数据类型查询与修改
MongoDB数据类型和对应的代码如下: MongoDB可以根据字段类型进行文档查询: 可以看到,friend集合的文档中,age字段有32位int类型的,也有double类型的.如果需要把doubl ...
- MongoDB 数据类型
MongoDB支持许多数据类型的列表下面给出: String : 这是最常用的数据类型来存储数据.在MongoDB中的字符串必须是有效的UTF-8. Integer : 这种类型是用来存储一个数值.整 ...
- MongoDB (七) MongoDB 数据类型
MongoDB支持许多数据类型的列表下面给出: String : 这是最常用的数据类型来存储数据.在MongoDB中的字符串必须是有效的UTF-8. Integer : 这种类型是用来存储一个数值.整 ...
- MongoDB 数据类型查询 — $type使用
MongoDB 使用过程中经常需要根据字段的类型来查询数据, 而MongoDB中查询字段类型是通过$type操作符来实现. $type使用法语: db.集合名.find({$type:类型值}); / ...
- 二 MongoDB数据类型和$type操作符
一.MongoDB中可以使用的类型如下表所示 二.$type操作符 举个例子:想获取指定集合中title为String类型的所有文档
- Symfony中Doctrine对应的Mongodb数据类型 data type
1. hash 就是 json对象 2. collection 就是 数组 3. 若要知道如何使用referenceOne, referenceMany, embbedDocument等 主要查看: ...
- MongoDB学习【二】—MongoDB基础和数据类型
一.MongoDB基础知识 在MongoDB中相关术语的解释和sql术语对应关系 SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table col ...
- MongoDB【第二篇】MongoDB逻辑与物理存储结构
基本的操作 一.常用的命令和基础知识 1.进入MongoDB sehll 首先我们进入到MongoDB所在目录执行 cd /work/app/mongodb/bin/ #启动 ./mongo 为了方便 ...
随机推荐
- ApiDoc 文档使用方式
1.安装node.js 2.打开node.js 命令窗(shell)键入npm install apidoc -g 自动安装(几分钟) 3. C:\Users\user\AppData\Roaming ...
- C++Builder设置完BorderStyle的值为none,以后如何实现窗口的移动和拉伸
在.h 文件中声明变量private: void __fastcall WndProc(TMessage &Msg);// User declarations: 在.cpp中实现下面的函数 v ...
- 一款免费支持PDF、word、excel、PPT、jpeg之间互转线上软件
偶然发现的一款免费支持PDF.word.excel.PPT.jpeg之间互转,支持合并pdf.加密解密PDF的线上软件,首先声明,不是广告党,我自己试用过,确实是目前我用过最好用的,如果有朋友有更好的 ...
- [Leetcode][JAVA] Minimum Window Substring
Given a string S and a string T, find the minimum window in S which will contain all the characters ...
- Hyper-V初涉_共享式网络链接
任何一台计算机,如果不能与网络连通,可以说已经失去了大部分的功能,Windows 8尤是如此,虚拟机亦是如此. Hyper-V并不能对物理机的网卡进行识别,所以需要借助虚拟网卡通过物理机的网络共享实现 ...
- 使用ajax预加载图片
使用Ajax 上面所给出的方法似乎不够酷,那现在来看一个使用Ajax实现图片预加载的方法.该方法利用DOM,不仅仅预加载图片,还会预加载CSS.JavaScript等相关的东西.使用Ajax,比直接使 ...
- 连接MySQL数据库(android、php、MySQL)
管理MySQL数据库最简单和最便利的方式是PHP脚本.运行PHP脚本使用HTTP协议和android系统连接.我们以JSON格式编码数据,因为Android和PHP都有现成的处理JSON函数. 下面示 ...
- JAVA学习博客---2015-7
@Updata 2015.7.17 开始熟悉API.WPS首字母自动大写,有的没有加#编号的,其实方法首字母不是大写例如Char charAt 实际上是char charAt.当然骆驼写法charA ...
- iOS 里面 NSTimer 防止 循环引用
使用NSTimer的类 #import "TBTimerTestObject.h" #import "TBWeakTimerTarget.h" @interfa ...
- SQLSERVER 里SELECT COUNT(1) 和SELECT COUNT(*)哪个性能好?
SQLSERVER 里SELECT COUNT(1) 和SELECT COUNT(*)哪个性能好? 今天遇到某人在我以前写的一篇文章里问到 如果统计信息没来得及更新的话,那岂不是统计出来的数据时错误的 ...