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 为了方便 ...
随机推荐
- gitlab安装过程总结
gitlab总算搭建好了,今天下午完成了第一个工程的导入. 梳理下搭建的过程: 1.下载bitnami的一键安装包,并安装 注意设置权限为777,以免出现某文件写入错误的问题 2.配置邮件服务 分别修 ...
- noip2010-t3
[题目描述] S 城现有两座监狱,一共关押着N 名罪犯,编号分别为1~N.他们之间的关系自然也极不和谐.很多罪犯之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突.我们用“怨气值”(一个正整数值)来 ...
- 亲测——pycharm下运行第一个scrapy项目 ©seven_clear
最近在学习scrapy,就想着用pycharm调试,但不知道怎么弄,从网上搜了很多方法,这里总结一个我试成功了的. 首先当然是安装scrapy,安装教程什么的网上一大堆,这里推荐一个详细的:http: ...
- 【安装mysql数据库】
方法/步骤 请注意上图中选择Custom选项,这样才能修改安装目录. 请注意为了数据安全,不要把mysql安装在系统盘,如C:盘. 可以在其他盘符下,新建两个文件夹,一个存储mysql的文件, ...
- java 数据导入到exc ,并下载
package com.lizi.admin.controller.platform.excel; import java.util.List;import java.util.Map; import ...
- java 验证码
package lizikj.bigwheel.pcsystem.util;import javax.imageio.ImageIO; import java.awt.*; import java.a ...
- myBatis+SpringMVC+Maven整合
一.先创建表结构 二.使用generator通过表结构自动生成model和dao.mapper 使用步骤: 1.解压generator.rar文件 2.文件中的generator.xml文件需要进行修 ...
- <转>技术团队新官上任之基层篇
发表于2013-09-04 17:17| 10455次阅读| 来源<程序员>| 35 条评论| 作者高博 <程序员>杂志2013年9月刊技术团队管理EMC高博CTO 摘要:从技 ...
- Node.js ORM 框架 sequelize 实践
最近在做团队的一个内部系统,这次使用的nodejs web框架是团队统一的hapi.js,而数据库依然是mysql,ORM 框架选用有着6000+ stars 的 sequelize.js,hapi- ...
- 【转】react 状态与属性区别
prop state 能否从父组件获取初始值 是 否 能否由父组件修改 ...